| | | OFFLINE | | Post: 257 Post: 246 | Registrato il: 02/03/2016 Registrato il: 03/03/2016 | Sesso: Maschile | |
|
15/04/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
[Modificato da JehovaZorobabele 16/04/2016 00:51] |