Stavo lavorando su un programma C e ho appena notato che posso eseguire il mio programma anche se non ho dichiarato le librerie richieste, questo è il codice:
#include <stdio.h>
#include <string.h>
int main(){
char x[999],y[999]="copyme";
strcpy(x,y);
printf("Output: %s",x);
return 0;
}
Dopo aver non dichiarato il string.h
libray, il programma può sempre essere eseguito e produrre il risultato. Come so, qualsiasi funzione utilizzata ha bisogno di una libray che specifichi il suo lavoro, logicamente, poiché non c'è string.h
la funzione strcpy
non deve funzionare, quindi, non ci deve essere output.
Supponevo che l'altra libreria ( stdio.h
) agisse come un vizio, ma dopo averlo dichiarato non dichiarato, il programma può essere eseguito e produrre l'output anche se non è stata dichiarata alcuna libreria. come può accadere ?, Le biblioteche non hanno ruolo?.