Sto cercando di capire perché le dimensioni del file di output sono significativamente diverse quando si utilizza un compilatore C e un C ++.
Stavo scrivendo un piccolo programma ciao mondo in C e C ++, ho notato che nella versione C, la dimensione dell'eseguibile era 93,7 KB e in C ++, la dimensione dello stesso programma ciao mondo era 1,33 MB. Non sono sicuro del perché sia così. Penso che potrebbe essere dovuto al fatto che il C ++ ha più librerie e spazi dei nomi da usare, quindi ho rimosso la riga using namespace std
e ho semplicemente usato std::cout
e il risultato è sempre lo stesso.
C
#include <stdio.h>
int main()
{
printf("hello world");
return 0;
}
// dimensione 93,7 KB
C ++
#include <iostream>
int main()
{
std::cout<<"Hello world";
return 0;
}
// dimensione 1,33 MB
Non sembra esserci molta differenza nel codice sopra. C'è una sorta di differenza del compilatore che crea le diverse dimensioni del file?