This is a convenient way to provide some “namespace structure” in header files. In the Unix world, the main separation is between headers of type <stdio.h> , which are often quite common and primarily for use by user programs, and not for the kernel of the operating system. In contrast, headers like <sys/sysinfo.h> or <sys/types.h> intended to be used to compile the kernel — they were more systemic. Y.
Currently, it provides the ability to separate project titles from other project titles. For example, <openssl/ssl.h> identifies the header as belonging to the OpenSSL code base.
I do not know that there is a specific name for this header designation style.
Note that if the OpenSSL headers are stored in the /usr/local/include/openssl directory, then you specify -I /usr/local/include on the compiler command line. What actually happens is that the title is viewed by prefixing the name in angle brackets with one of several standard directories, of which /usr/include is used by default on Unix. Therefore, <stdio.h> is in /usr/include/stdio.h , and <sys/sysinfo.h> is in /usr/include/sys/sysinfo.h , etc.
Jonathan leffler
source share