Programozzunk együtt!
A preprocesszor programozása I.
Mi is a preprocesszor? A C és C++ programok fordítása
előtt lefutó szövegfeldolgozó program. Mit is jelent ennek a programozása?
A forráskódban több dolgot módosíthatunk: beépíthetünk
fájlokat, definiálhatunk feltételes fordítást stb.
A preprocesszor programutasításait a sor elején lévő
'#' jel jelzi. De nézzünk meg példákat:
'#include ' : Ezzel az utasítással
egy teljes fájlt építhetünk be a forráskódunkba úgy, mintha ott beírva
szerepelne. Ezt az utasítást használjuk a C/C++ header fájljainak beépítésére
is: Pl: '#include '
'#define KONSTANS "ÉRTÉK": Ennek az utasításnak a hatására
minden olyan 'KONSTANS' karakterlánc, amely nem szerepel "-jelek között,
az ki lesz cserélve az "ÉRTÉK" karakterláncra. Pl:
// peldaprogram1.c - Egyszeru pelda a preprocesszor
hasznalatara
#include
#define SZOVEG "Ez a szoveg lesz kiirva!!!"
void main(void)
{
printf(SZOVEG);
}
// peldaprogram vege
Nos, mi is fog történni? A preprocesszor először kicseréli
a 'printf' utasítás paramétereként megadott SZOVEG karakterláncot az
"Ez a szoveg lesz kiirva!!!" karakterláncra, majd
a compiller lefordítja a programot. Ennek révén a programot lefuttatva
a "Ez a szoveg lesz kiirva!!!" karakterlánc lesz kiírva. Hol lehet ezt
még felhasználni? Például kiváló lehetőség arra, hogy egy programból különböző
nemzeti változatot készítsünk: Hogy hogyan: Egyszerűen kirakjuk a kiirandó
sztringeket egy külön header (fejléc) fájlba, a '#define'-kel
pedig definiáljuk a kiírandó sztringeket: így, például egy angol nyelven
megírt programot könnyedén, az egyik fejlécfájl megszerkesztésével, majd
a program újrafordításával átültethetünk magyar nyelvre.
A következő cikkben tovább folytatom a preprocesszor
programozásának a témáját.
2001. február 23., péntek 16:35
|