1) Preprocessore e le sue istruzioni

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
JehovaZorobabele
00venerdì 15 aprile 2016 17:11
Preprocessore o precompilatore le sue key o comandi
Prima di iniziare il vero cammino dobbiamo conoscer come iniziare

la prima cosa che dobbiamo inserire nei programmi in C sono i comandi  meglio direttive del preprocessore cosa è il preprocessore ? sembra che sia una macchina dentro il PC , no sono dei comandi prestabiliti che fa parte del compilatore , infatti il preprocessore è meglio chiamarlo precompilatore inizializza i comandi che dobbiamo inserire se gia avete letto la guida di webMaster che avevo consigliato :

http://www.mrwebmaster.it/c/primo-programma_9691.html 

Avete visto che per iniziare si deve inserire la formula magica

"#include <libreria> "

quella libreria che era STDIO.H  è il comando che fa riconoscere il significato della parola printf che dice al compilatore scrivi su monitor ogni libreria fa riconoscere i suoi comandi il significato di stdio propio il IO sta per INPUT entrata OUTPUT uscita un input è la tastiera, il mouse , una telecamera ,  l' output è il video , il disco fisso, la stampante ecc...  

Questi comandi per pilotare il compilatore in C sono proprio pochi  :

#define #error #include #elif #if #line #else #ifdef #pragma #endif #ifndef #undef #warning

Quelli più importanti sono #INCLUDE e #DEFINE il primo serve per includere i vari file che pilota il compilatore tutti i file li troviamo nella cartella include del compilatore  ma sono tantissimi perchè qui nel VS2015 c'è la libreria del C , del C++, del C++ MFC, del C++ CLR,  C ATL, per questo bisogna impostare il compilatore solo in C altrimenti da errori  potevamo usare altri compilatori ma questo è molto più completo poi si può lavorare con il visuale dopo capito tutto l'altro

Inoltre con #INCLUDE " file.* " e virgolette possiamo aprire i file esterni

quando il compilatore trova questo comando #Include sa che deve leggere dentro quel file e mette in memoria tutti i comandi che serve per gestire la compilazione , infatti se togliete l' include inserendo 2   //  per i commenti  noterete che i comandi collegati come printf e scanf saranno sottoliniati in rosso e se mandi in esecuzione ti dice nella finestra errori output

warning C4013: 'printf' non definita

Se ancora funziona normale è  perchè il file che hai aperto aveva gia caricato i comandi di STDIO


#DEFINE  serve per definire delle parole come se fosse delle costanti una variabile fissa che il programma non può più cambiare esempio dobbiamo impostare una linea anzi che scrivere sempre  ;

printf("----------------------------------------------------");

possiamo fare

#define  li  printf(" ---------------------------------------------");

cosi ogni volta che si richiama li il programma  avviato stampa la linea ora vediamo questi che si usano con #define come non lo capito bene  ovvero ho capito che  funziona sulle macro come se fosse if dovrebbe togliere le definizioni di #Define per poi sostituirle .... anche qui si usa i comandi di #IF   

#IFDEF e #IFNDEF #UNDEF le parole significa : " se definito ", " se non definito", " elimina la definizione "

Se si usa #Undef il compilatore non legge più la definizione pertanto non  troviamo più quello che era stato dichiarato con #define alla fine dell' uso di #Ifdef va sempre chiuso con #endif altrimenti il compilatore da errori  

come funziona veramente non lo capito, se trovate qualche testo che spiega bene potete segnalarmelo


Le direttive #if #else #elif #endif sono come le parole chiavi che usiamo normalmente  IF ELSE ELSEIF , dove if vuol dire  se

IF o #IF  a=b                      SE a=b 
 facciamo questo  :  printf(" ciao ");

ELSE IF o #ELIF    ALTRIMENTI +SE  a>b                             
facciamo questo :   printf(" arrivederci ");   e seguitiamo nelle scelte

ELSE o #ELSE          OPPURE
faccio questo perchè a non è ne = ne > di b,invece abbiamo  a < di b    printf(" addio ");

l' ELSE IF o #ELIF  possiamo inserirli più di uno infatti il IF finale dice segue nelle scelte finche non trova ELSE ultima scelta per poi chiudere con la graffa } per l' IF normale  mentre #ENDIF serve proprio per chiudere le scelte che fa gli if del preprocessose o precompiltore  

#ERROR  e #WARNING sono direttive che serve per segnalare errori  o di avvertimento vanno usate sempre con le direttive #IF ecc...

#LINE  ti manda alla linea dove dice il compilatore alla sinistra  come spiega qui ;

http://www.cquestions.com/2011/01/line-directive-in-c.html

 
Altri comandi non ho trovato nulla su #pragma

Ciao alla prossima



Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 06:56.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com