Fichiers d'entêtes de la bibliothèque
Voici la liste des différents fichiers d'entêtes reconnus de base par la bibliothèque glibc et habituellement inclus à l'aide de la directive de compilation «#include» :
Fichier d'entête | Description |
---|---|
aio.h | Ce fichier d'entête permet de fournir des fonctionnalités pour les entrées/sorties désynchronisés (Asynchronous I/O) telles que aio_read, aio_write, et aio_suspend. |
aliases.h | Ce fichier d'entête permet de gérer les alias de noms dans des configurations spécifiques, souvent lié aux protocoles réseau ou aux fichiers système. |
alloc_buffer.h | Ce fichier d'entête permet de gérer des tampons dynamiques alloués en mémoire. |
alloca.h | Ce fichier d'entête contient la fonction alloca, utilisée pour allouer de la mémoire temporaire sur la pile. Cette mémoire est automatiquement libérée lorsque la fonction l'ayant appelée se termine. |
allocate_once.h | Ce fichier d'entête permet l'initialisation de ressources ou de variables uniquement une fois dans un programme. |
ar.h | Ce fichier d'entête permet de fournir des structures et définitions pour manipuler des fichiers d'archives, tels que ceux utilisés par la commande ar. |
argp-fmtstream.h | Ce fichier d'entête permet la gestion des paramètres argp pour formater et gérer les flux d'entrée/sortie. |
argp.h | Ce fichier d'entête permet de fournir des fonctions pour analyser les paramètres de ligne de commande à l'aide du système argp, une alternative à getopt. |
argz.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des vecteurs de chaînes terminées par des zéros (argz), utilisées pour gérer des tableaux de chaînes. |
array_length.h | Ce fichier d'entête permet de déterminer la longueur des tableaux au moment de la compilation. |
assert.h | Ce fichier d'entête permet de fournir la macro assert pour vérifier des conditions lors du débogage. Si la condition échoue, le programme s'arrête. |
atomic.h | Ce fichier d'entête permet de définir des fonctions et macros pour effectuer des opérations atomiques, souvent utilisées dans la programmation multi-processus léger. |
atomic_wide_counter.h | Ce fichier d'entête permet de gérer des compteurs atomiques larges (utilisés pour des valeurs de grande taille). |
byteswap.h | Ce fichier d'entête permet de fournir des macros et fonctions pour permuter l'ordre des octets (endianess), par exemple pour convertir entre big-endian et little-endian. |
clone_internal.h | Ce fichier d'entête contient l'implémentation de la fonction clone, utilisée pour créer de nouveaux processus ou processus léger. |
complex.h | Ce fichier d'entête permet de fournir des macros et fonctions pour manipuler des nombres complexes (standard C99). |
cpio.h | Ce fichier d'entête permet de fournir des définitions pour les fichiers d'archives cpio, comme les formats de fichiers et les constantes associées. |
ctype.h | Ce fichier d'entête permet de fournir des fonctions pour classifier et manipuler des caractères, comme isalpha, isdigit, toupper,... |
des.h | Ce fichier d'entête permet de fournir des définitions pour le chiffrement DES (Data Encryption Standard). Ce fichier peut être lié à des fonctionnalités de sécurité obsolètes. |
dirent.h | Ce fichier d'entête permet de fournir des fonctions pour lire et manipuler des répertoires, comme opendir, readdir, et closedir. |
dlfcn.h | Ce fichier d'entête permet de fournir des fonctions pour charger dynamiquement des bibliothèques partagées, comme dlopen, dlsym, et dlclose. |
dso_handle.h | Ce fichier d'entête permet de gérer les objets partagés dynamiquement. |
elf.h | Ce fichier d'entête permet de fournir des structures et constantes pour manipuler des fichiers au format ELF (Executable and Linkable Format), couramment utilisés sous Linux. |
endian.h | Ce fichier d'entête permet de fournir des macros pour manipuler l'endianess (ordre des octets) des données, comme __LITTLE_ENDIAN, __BIG_ENDIAN, et des fonctions pour conversion de formats. |
envz.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des listes d'environnements sous la forme de vecteurs terminés par un zéro (envz_add, envz_merge,...). |
err.h | Ce fichier d'entête permet de définir des fonctions pour afficher des messages d'erreur et terminer un programme (err, errx, warn, warnx). |
errno.h | Ce fichier d'entête permet de déclarer la variable globale errno, utilisée pour indiquer les erreurs des fonctions système ou des bibliothèques standard. |
error.h | Ce fichier d'entête permet de fournir des fonctions pour afficher des messages d'erreur et appeler un gestionnaire d'erreurs (error et error_at_line). |
execinfo.h | Ce fichier d'entête permet de fournir des fonctions pour obtenir des informations sur la pile d'exécution (backtrace, backtrace_symbols,...). |
fcntl.h | Ce fichier d'entête permet de fournir des définitions et fonctions pour contrôler les fichiers et descripteurs de fichiers (open, fcntl,...). |
features-time64.h | Ce fichier d'entête permet de gérer les macros associées au support du type time_t sur 64 bits. |
features.h | Ce fichier d'entête permet d'activer ou de désactiver certaines fonctionnalités selon les macros définies, comme _GNU_SOURCE, _POSIX_C_SOURCE. |
fenv.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler l'état de l'environnement arithmétique flottant (exceptions et arrondi, standard C99). |
file_change_detection.h | Ce fichier d'entête permet de détecter les changements dans des fichiers ou flux de données. |
filename.h | Ce fichier d'entête contient des utilitaires pour manipuler des noms de fichiers. |
float.h | Ce fichier d'entête permet de fournir des constantes pour les limites des types à virgule flottante (FLT_MAX, DBL_MIN,...). |
fmtmsg.h | Ce fichier d'entête permet de fournir une interface pour afficher des messages formatés conformément au standard XSI (fmtmsg). |
fnmatch.h | Ce fichier d'entête permet de fournir des fonctions pour faire correspondre des chaînes avec des motifs utilisant des caractères génériques (fnmatch). |
fpu_control.h | Ce fichier d'entête permet de fournir des macros pour contrôler les paramètres du coprocesseur FPU, comme l'arrondi et les exceptions. |
fstab.h | Ce fichier d'entête permet de fournir des structures pour manipuler les informations du fichier système /etc/fstab. |
fts.h | Ce fichier d'entête permet de fournir des fonctions pour parcourir des hiérarchies de fichiers de manière récursive (fts_open, fts_read,...). |
ftw.h | Ce fichier d'entête permet de fournir des fonctions pour parcourir des répertoires récursivement, comme ftw et nftw. |
gconv.h | Ce fichier d'entête permet de fournir des interfaces pour la conversion d'ensembles de caractères, utilisé par iconv. |
getopt.h | Ce fichier d'entête permet de fournir des fonctions pour analyser les options de ligne de commande (getopt, getopt_long). |
getopt_int.h | Ce fichier d'entête contient l'implémentation de getopt. |
glob.h | Ce fichier d'entête permet de fournir des fonctions pour effectuer des recherches de chemins en utilisant des motifs (glob, globfree). |
gmp.h | Ce fichier d'entête permet de fournir des définitions pour utiliser la bibliothèque GNU MP (arithmétique multi-précision). |
gnu-versions.h | Ce fichier d'entête permet de lister les versions des fonctionnalités ou symboles spécifiques à GNU. |
grp-merge.h | Ce fichier d'entête permet de fusionner les informations de groupes dans des structures système. |
grp.h | Ce fichier d'entête permet de fournir des structures et fonctions pour gérer les groupes utilisateur, comme getgrent, getgrgid, et getgrnam. |
gshadow.h | Ce fichier d'entête permet de fournir des structures et fonctions pour manipuler les fichiers d'ombres des groupes (/etc/gshadow). |
iconv.h | Ce fichier d'entête permet de fournir une interface pour la conversion entre différents encodages de caractères (iconv_open, iconv,...). |
idx.h | Ce fichier d'entête permet de manipuler des indices dans des tableaux ou structures. |
ifaddrs.h | Ce fichier d'entête permet de fournir des fonctions pour obtenir des informations sur les interfaces réseau (getifaddrs, freeifaddrs). |
ifreq.h | Ce fichier d'entête permet de déclarer des structures et constantes pour les requêtes ioctl associées aux interfaces réseau. |
ifunc-impl-list.h | Ce fichier d'entête contient l'implémentation de fonctions indirectes (IFUNC) utilisées pour l'optimisation. |
inline-hashtab.h | Ce fichier d'entête permet de manipuler des tables de hachage en ligne. |
intprops.h | Ce fichier d'entête permet de fournir des macros pour tester les propriétés des types entiers (par exemple, débordements). |
inttypes.h | Ce fichier d'entête permet de fournir des macros et fonctions pour manipuler des types entiers spécifiques (standard C99). |
langinfo.h | Ce fichier d'entête permet de fournir des fonctions pour récupérer des informations sur la localisation, comme le format des dates (nl_langinfo). |
lastlog.h | Ce fichier d'entête permet de fournir des structures pour lire et écrire les informations de connexion dans /var/log/lastlog. |
libc-diag.h | Ce fichier d'entête permet d'afficher des diagnostics liés à la glibc. |
libc-internal.h | Ce fichier d'entête contient les fonctionnalités internes à la bibliothèque C. |
libc-misc.h | Ce fichier d'entête contient des fonctions diverses pour la glibc. |
libc-pointer-arith.h | Ce fichier d'entête permet de fournir des macros pour effectuer des calculs sécurisés sur des pointeurs. |
libc-symbols.h | Ce fichier d'entête permet de gérer les symboles publics et privés de la glibc. |
libgen.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler les noms de fichiers et chemins, comme basename et dirname. |
libintl.h | Ce fichier d'entête permet de fournir des fonctions pour la localisation et la traduction, comme gettext et dgettext. |
limits.h | Ce fichier d'entête permet de définir les constantes des limites des types de données, comme CHAR_MAX, INT_MIN, LONG_MAX. |
link.h | Ce fichier d'entête permet de fournir des fonctions et structures pour interagir avec le chargeur dynamique (dynamic linker). |
list.h | Ce fichier d'entête contient des macros et structures pour manipuler des listes doublement chaînées. |
list_t.h | Ce fichier d'entête permet de gérer des listes spécifiques dans certaines parties de la glibc. |
locale.h | Ce fichier d'entête permet de fournir des fonctions pour configurer et interroger les paramètres de localisation (setlocale, localeconv). |
loop_unroll.h | Ce fichier d'entête contient l'optimisation des boucles (déroulage des boucles). |
malloc.h | Ce fichier d'entête permet de fournir des fonctions pour la gestion de la mémoire dynamique, comme malloc, calloc, et realloc. |
math-narrow-eval.h | Ce fichier d'entête permet d'optimiser les calculs mathématiques sur des types plus petits que double. |
math.h | Ce fichier d'entête permet de fournir des fonctions mathématiques standard (sin, cos, sqrt,...). |
mcheck.h | Ce fichier d'entête permet de fournir des fonctions pour vérifier les erreurs liées à l'allocation de mémoire (mcheck, mprobe). |
memory.h | Ce fichier d'entête permet de fournir des fonctions de manipulation de mémoire comme memcpy, memmove, memset. |
mntent.h | Ce fichier d'entête permet de fournir des fonctions pour lire et écrire des informations sur les systèmes de fichiers montés (/etc/mtab). |
monetary.h | Ce fichier d'entête permet de fournir des fonctions pour formater des valeurs monétaires (strfmon). |
mqueue.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler les files de messages POSIX (mq_open, mq_send,...). |
netdb.h | Ce fichier d'entête permet de fournir des fonctions pour interagir avec les bases de données réseau, comme gethostbyname et getaddrinfo. |
netgroup.h | Ce fichier d'entête permet de fournir des fonctions pour interroger les groupes réseau (setnetgrent, getnetgrent,...). |
nl_types.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des catalogues de messages (catopen, catgets, catclose). |
nss.h | Ce fichier d'entête contient l'implémentation du service de commutation des noms (Name Service Switch). |
nss_dns.h | Ce fichier d'entête contient le backend DNS du système NSS. |
nss_files.h | Ce fichier d'entête contient le backend "files" (utilisant des fichiers locaux) du système NSS. |
nsswitch.h | Ce fichier d'entête permet de fournir des macros et structures pour gérer les configurations NSS (Name Service Switch). |
obstack.h | Ce fichier d'entête permet de fournir des fonctions pour la gestion des piles d'objets dynamiques (obstacks). |
plural-exp.h | Ce fichier d'entête permet de gérer les règles de pluriels dans les catalogues de messages. |
poll.h | Ce fichier d'entête permet de fournir des fonctions pour surveiller des descripteurs de fichiers et leurs événements (poll). |
printf.h | Ce fichier d'entête contient l'implémentation des fonctions de formatage comme printf. |
printf_buffer.h | Ce fichier d'entête permet de gérer les tampons utilisés dans printf et autres fonctions similaires. |
programs | Ce fichier d'entête permet de gérer les programmes dans la glibc. |
protocols | Ce fichier d'entête permet de fournir des constantes et structures pour les protocoles réseau, basé sur /etc/protocols. |
pthread.h | Ce fichier d'entête permet de fournir des fonctions pour gérer les processus léger POSIX (pthread_create, pthread_mutex_lock,...). |
pty.h | Ce fichier d'entête permet de fournir des fonctions pour gérer les pseudo-terminaux (openpty, forkpty). |
pwd.h | Ce fichier d'entête permet de fournir des fonctions pour interagir avec les bases de données d'utilisateurs, comme getpwnam, getpwuid. |
random-bits.h | Ce fichier d'entête permet de générer des bits aléatoires utilisés dans certaines parties de la glibc. |
re_comp.h | Ce fichier d'entête permet de fournir des fonctions obsolètes pour la compilation d'expressions régulières. |
regex.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des expressions régulières POSIX (regcomp, regexec,...). |
regexp.h | Ce fichier d'entête permet de fournir des fonctions similaires à regex.h mais dans un style BSD, maintenant obsolètes. |
register-atfork.h | Ce fichier d'entête permet de gérer les gestionnaires enregistrés avec pthread_atfork. |
resolv.h | Ce fichier d'entête permet de fournir des fonctions pour effectuer des requêtes DNS (res_query, res_search,...). |
rounding-mode.h | Ce fichier d'entête permet de gérer le mode d'arrondi des opérations flottantes. |
rtld-malloc.h | Ce fichier d'entête permet la gestion de la mémoire dans le chargeur dynamique. |
sched.h | Ce fichier d'entête permet de fournir des fonctions pour la gestion de la planification des processus et processus léger (sched_yield, sched_setparam). |
scratch_buffer.h | Ce fichier d'entête permet de gérer des tampons temporaires dans certaines parties de la glibc. |
search.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des tables de hachage et des arbres binaires (hsearch, tsearch,...). |
set-freeres.h | Ce fichier d'entête permet de libérer des ressources associées aux processus légers et aux environnements locaux. |
setjmp.h | Ce fichier d'entête permet de fournir des macros et fonctions pour manipuler des sauts non locaux (setjmp, longjmp). |
sgtty.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler les terminaux, obsolètes et remplacées par termios. |
shadow.h | Ce fichier d'entête permet de fournir des structures et fonctions pour accéder aux mots de passe sécurisés (/etc/shadow). |
shlib-compat.h | Ce fichier d'entête permet de gérer la compatibilité entre différentes versions de bibliothèques partagées. |
shm-directory.h | Ce fichier d'entête permet de gérer les segments de mémoire partagée (shared memory). |
signal.h | Ce fichier d'entête permet de fournir des fonctions et macros pour manipuler les signaux Unix, comme signal, sigaction, raise, kill. |
spawn.h | Ce fichier d'entête permet de fournir des fonctions pour créer et contrôler des processus (posix_spawn, posix_spawnp). |
stab.h | Ce fichier d'entête permet de définir des constantes utilisées dans les tables de symboles de débogage (STAB). |
stackinfo.h | Ce fichier d'entête permet de gérer les informations sur les piles des processus léger et processus. |
stap-probe.h | Ce fichier d'entête permet d'intégrer des probes SystemTap dans la glibc. |
stdbit.h | Ce fichier d'entête permet de définir des macros pour manipuler des bits, introduit dans C23. |
stdc-predef.h | Ce fichier d'entête permet de définir des macros standard selon les versions du langage C et les extensions. |
stdint.h | Ce fichier d'entête permet de définir les types d'entiers standard avec des tailles fixes (exemple, int32_t, uint64_t). |
stdio.h | Ce fichier d'entête permet de fournir des fonctions pour les entrées/sorties standard (printf, scanf, fopen,...). |
stdio_ext.h | Ce fichier d'entête permet de fournir des fonctions supplémentaires pour manipuler des flux de fichiers, spécifiques à glibc (__fbufsize, __fpending). |
stdlib.h | Ce fichier d'entête permet de fournir des fonctions pour la gestion de la mémoire, les conversions, la génération de nombres aléatoires (malloc, atoi, rand). |
string.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des chaînes de caractères et des blocs mémoire (strlen, strcpy, memcpy). |
strings.h | Ce fichier d'entête permet de fournir des fonctions supplémentaires pour les chaînes de caractères, comme strcasecmp et strncasecmp. |
struct___timeb64.h | Ce fichier d'entête permet de définir la structure __timeb64, utilisée pour représenter les dates/horaires en 64 bits. |
struct___timespec64.h | Ce fichier d'entête permet de définir la structure __timespec64, utilisée pour gérer les intervalles de temps en 64 bits. |
struct___timeval64.h | Ce fichier d'entête permet de définir la structure __timeval64, utilisée pour représenter des durées temporelles en 64 bits. |
stubs-prologue.h | Ce fichier d'entête permet de générer des stubs (bouts de code servant de placeholder). |
syscall.h | Ce fichier d'entête permet de fournir des interfaces pour effectuer des appels système directement (syscall). |
sysexits.h | Ce fichier d'entête permet de définir des codes de sortie standard pour les programmes, comme EX_OK, EX_USAGE. |
syslog.h | Ce fichier d'entête permet de fournir des fonctions pour la journalisation système (syslog, openlog, closelog). |
tar.h | Ce fichier d'entête permet de définir les constantes et structures utilisées pour manipuler des archives tar. |
termios.h | Ce fichier d'entête permet de fournir des fonctions pour configurer et manipuler les terminaux (tcgetattr, tcsetattr). |
tgmath.h | Ce fichier d'entête permet de fournir des fonctions mathématiques génériques compatibles avec des types complexes et réels. |
time.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des dates et heures (time, strftime, clock). |
ttyent.h | Ce fichier d'entête permet de fournir des fonctions pour lire et manipuler les entrées de terminaux dans /etc/ttys. |
uchar.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler les types de caractères Unicode (char16_t, char32_t). |
ucontext.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des contextes d'exécution (getcontext, setcontext). |
ulimit.h | Ce fichier d'entête permet de fournir des fonctions pour interroger et définir les limites de ressources système (ulimit). |
unistd.h | Ce fichier d'entête permet de fournir des définitions et fonctions POSIX générales pour les processus, fichiers, et IO (fork, read, exec). |
unistd_ext.h | Ce fichier d'entête contient l'extension de unistd.h, spécifique à la glibc. |
utime.h | Ce fichier d'entête permet de fournir des fonctions pour modifier les horodatages des fichiers (utime). |
utmp.h | Ce fichier d'entête permet de fournir des structures et fonctions pour lire et écrire dans les fichiers d'état utilisateur (/var/run/utmp). |
values.h | Ce fichier d'entête permet de définir des constantes mathématiques et de limites de types (ancien, remplacé par limits.h). |
verify.h | Ce fichier d'entête permet de valider des conditions et générer des erreurs à la compilation si elles échouent. |
wait.h | Ce fichier d'entête permet de fournir des macros et fonctions pour attendre la fin de processus enfants (wait, waitpid). |
wchar.h | Ce fichier d'entête permet de fournir des fonctions pour manipuler des chaînes de caractères larges (wcslen, wcscpy). |
wctype.h | Ce fichier d'entête permet de fournir des fonctions pour tester et manipuler des caractères larges (iswalpha, towupper). |
wordexp.h | Ce fichier d'entête permet de fournir des fonctions pour l'expansion des mots en interpréteur de commande (wordexp, wordfree). |
Dernière mise à jour : Mercredi, le 1er janvier 2025