C a C++

adrian_134

Użytkownik
Dołączył
Styczeń 28, 2007
Posty
39
Witam!

Napisałem kawałek kodu w C skompilowałem w gcc, rozmiar pliku wynikowego 22k, ok zmieniłem rozszerzenie pliku z .c na .cpp odpaliłem VC++ skompilowałem ten sam kawałek kodu tylko że w C++ w wersji Releasem spojrzałem na rozmiar pliku wynikowego no i 8k. Zdziwiłem się i to bardzo, zakładałem już tutaj temat o korzyściach stosowania C, niby plik mniej waży szybciej działa.... W sam raz do pisania trojanów itp... No ale... Czy mógł by się ktoś dokładniej wypowiedzieć na owy temat ?
 

D.F.

Były Moderator
Dołączył
Listopad 4, 2009
Posty
493
Oprócz tego, jaki kod napisze programista, plik wynikowy zależy również od kompilatora (optymalizacji itp.). Może to dlatego, że gcc jest oryginalnie stworzone dla Linuxa, a Visual C++ jest stworzone dla Windows i lepiej zoptymalizowane dla tego systemu.
 

adrian_134

Użytkownik
Dołączył
Styczeń 28, 2007
Posty
39
Oprócz tego, jaki kod napisze programista, plik wynikowy zależy również od kompilatora (optymalizacji itp.). Może to dlatego, że gcc jest oryginalnie stworzone dla Linuxa, a Visual C++ jest stworzone dla Windows i lepiej zoptymalizowane dla tego systemu.
Jeżeli tak sprawa wygląda to może warto używać C++ no chyba że Visual C++ ma w sobie kompilator do C...
 

5.56

Użytkownik
Dołączył
Luty 1, 2010
Posty
102
Dwie małe uwagi -
1.Każdy exe z gcc(MinGW?) można jeszcze przelecieć narzędziem "strip",wycinającym jakieś dane dla debuggerów i tym samym zmniejszającym rozmiar programu.
2.Zrobiłem to samo porównanie u siebie(7,MSVC++ 2k10,Release),wyniki:

Dwa kilobajty na samym "Hello world"?W dzisiejszych czasach mało,ale z perspektywy pisania "trojanów" to dużo.
 

adrian_134

Użytkownik
Dołączył
Styczeń 28, 2007
Posty
39
Dwie małe uwagi -
1.Każdy exe z gcc(MinGW?) można jeszcze przelecieć narzędziem "strip",wycinającym jakieś dane dla debuggerów i tym samym zmniejszającym rozmiar programu.
2.Zrobiłem to samo porównanie u siebie(7,MSVC++ 2k10,Release),wyniki:

Dwa kilobajty na samym "Hello world"?W dzisiejszych czasach mało,ale z perspektywy pisania "trojanów" to dużo.

Tak gcc z MinGW, właśnie chodzi mi o to że chce uzyskac jak najmniejszy rozmiar, zdziwiłem się jak zobaczyłem plik z Visuala...

EDIT: Po stripie rozmiar z gcc wynosił tyle co z Visuala czyli 8k
 
Ostatnia edycja:
Do góry Bottom