Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME III. Les librairies utilitaires

16. Le groupe s_cpp

16.1 CppOpen (file s_cpp.c:115)

Syntax

CPPFILE *CppOpen(
char *filename,
int type
)
#else
CPPFILE *CppOpen(filename, type)
char *filename;
int type;
#endif

Description

Ouvre un fichier en mode interprétation. L'interpréteur gère les fichiers inclus (include) et les macros (define).

Trois variables contenant les caractères spéciaux reconnus par les fonctions du groupe Cpp peuvent être (re-)définies à tout moment.

Directives

Les directives suivantes sont interprétées :

Pour qu'une telle ligne ne soit pas interprétée, il suffit de placer un point-virgule (;) après le caractère #.

Macros

Le nom des macros peuvent être quelconque mais ne doit pas contenir de caractères autres qu'alphanumériques ou de soulignement (_).

L'utilisation des macros se fait à l'aide du caractère & suivi du nom de la macro :

    #define UINT  unsigned short
...
&UINT i;

Pour annuler l'interprétation d'une macro, il suffit de placer un point-virgule (;) après le caractère &.

Le séparateur qui suit le nom de la macro peut être quelconque. S'il s'agit d'un point-virgule (;), ce caractère est consommé.

    #define TX unsigned short
&;TX x,y
&TX x,y
&TXx,y

Donne à l'interprétation

    &TX x,y
unsigned short x,y
unsigned shortx,y

Pour prolonger le texte d'une macro sur plusieurs lignes, il suffit de placer en fin de ligne le caractère #. La ligne suivante ne sera pas interprétée (sauf en ce qui concerne les "sous-macros" utilisées) et fera partie de la macro.

Pour placer le caractère # en fin de macro, il suffit de le doubler en fin de ligne.

    #define PAR1 .par1 par_1#

#define PAR2 .par1 par_2##
&PAR1 texte1
&PAR2 texte2

Donne à l'interprétation

    .par1 par_1
texte1
.par1 par2# texte2

Si une macro n'est pas définie, le texte du fichier n'est pas interprété. Ainsi:

    #define A AVAL
&A
&B

Donne à l'interprétation

    AVAL
&B

Valeur retournée

La fonction retourne un pointeur vers une structure CPPFILE.

Voir également

CppGetc(), CppUngetc(), CppClose()

16.1.1 File s_cpp.c

int CppClose(cpp)
CPPFILE *CppCurrent(CPPFILE *cpp)
int CppDefine(name, txt)
char *CppError(cpp)
CppGetc(cpp)
CPPFILE *CppOpen(char *filename, int type)
int CppRecord(cpp, buf)
int CppRecordLILO(cpp, buf)
int CppUngetc(cpp, ch)

CppCurrent (file s_cpp.c:366)

Syntax

CPPFILE *CppCurrent(
CPPFILE *cpp
)
#else
CPPFILE *CppCurrent(cpp)
CPPFILE *cpp;
#endif

Description

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be