Die exe-Datei enthält überhaupt keinen Quellcode, sondern das was Compiler und Linker daraus machen.
Funktionen aus dem Quellcode, die nicht verwendet werden, landen nicht in der exe-Datei.
Beispiel.
main1.c
#include <stdio.h>
int main() {
printf("Hello World!\n");
return 0;
}
main2.c
#include <stdio.h>
int main() {
printf("Hello World!\n");
return 0;
}
int max(int i, int j) {
return i > j ? j: i;
}
Nach gcc -s main1.c -o main1
und gcc -s main2.c -o main2
haben die erzeugten Dateien main1 und main2 genau die gleiche Größe.