La bibliothèque standard du C95

Introduction

On appelle C95 le C90 modifié par le premier amendement à la norme. Cet amendement ajoute les caractères étendus au C90 et une série de fonctions pour traiter les caractères étendus et multibytes.

Les nouveaux entêtes sont <iso646.h>, <wchar.h> et <wctype.h>. Quelques autres entêtes sont modifiés: <errno.h> et <stdio.h>.

Entêtes

Les fonctions de la bibliothèque standards sont déclarées dans des entêtes qui contiennent aussi des définitions et des déclarations de types et de macros nécessaires pour utiliser les fonctionnalités de la bibliothèque standard.

Avant toute utilisation d'un identificateur de la bibliothèque standard, il faut inclure un des entêtes qui le défini. Cette inclusion doit se faire en dehors de toute déclaration ou définition externe.

Dans le cas d'une fonction, on peut aussi la déclarer soi-même. Mais ce n'est pas particulièrement conseillé (ce n'est conforme ni en C++ ni en C99), et ce n'est pas possible non plus pour les types.

À part pour <assert.h>, les entêtes peuvent être inclus plusieurs fois sans que l'effet soit différent de celui optenu en faisant l'inclusion une seule fois.

Les entêtes peuvent être inclus dans n'importe quel ordre et aucun entête n'impose l'inclusion d'un autre.

Macros

Les fonction de la bibliothèque standard peuvent aussi être fournies comme des macros. Dans ce cas, elles doivent évaluer leurs arguments une seule fois sauf getc() et putc() qui peuvent les évaluer plusieurs fois.

Même si elles sont aussi fournies en tant que macros, les fonctions doivent être correctement déclarées de sorte que qu'il soit possible de les appeler si le programmeur a enlevé la définition de la macro (avec #undef) ou dans un contexte où la macro n'est pas évaluée ((f)(x) par exemple).

Références

Copyright et conditions d'utilisation

Copyright (C) 2008 -- 2009, Jean-Marc Bourguet.

La création de miroir et l'impression ne sont pas autorisées sans accord explicite préalable, merci.

Colophon

Cette référence a été générée en HTML par Doxygen à partir de fichiers C contenant les déclarations de la bibliothèque standard du C95 annotées par Jean-Marc Bourguet.

Copyright © 2008 -- 2009 Jean-Marc Bourguet Accueil Pages sur le C