@pyroxar: zasadniczo nie wpływa, chyba że generujesz plik z informacjami debugowymi, albo eksportujesz tą zmienną - wtedy może. W C i C++ będzie to pewnie różnie wyglądało że względu na manglowanie nazw w
@pyroxar: sam program nie urośnie ale urosną informacje dla debuggera. Jesli kompilujesz z opcją aby debug info było wkompilowane w binarke programu, to binarka urosnie. Ale urosnie nieznacznie, bo ta zmienna będzie pewnie występować tylko jeden raz.
@pyroxar: Nazwy zmiennych i tak są przez kompilator ubijane. Jak sobie otworzysz skompilowaną binarke przez jakieś narzędzie do reverse engineering to po swoich nazwach nie znajdziesz śladu. Mowa oczywiście o binarce w wersji release, bo w wersji debug takie informacje są przechowywane więc to może zrobić różnicę.
#programowanie #programista15k #pytaniedoeksperta #linux
W C i C++ będzie to pewnie różnie wyglądało że względu na manglowanie nazw w
int a = 5;
int bhadhjshjdhbxhbdsnhfdjuvnxznjsajsd_gfnkxkjsnbxzkjdskjds = 7;
Czy od długiej nazwy zmiennej program "urośnie"? @hellfirehe
#include <stdio.h>
int main(int argc, char *argv[]) {
for(int i=0; i<argc; i++)
printf("alamakota");
return 0;
}
i kompilujemy:
gcc test.c -O0 -g -o test_short_dbg
gcc test.c -O3 -o test_short_rel
następnie zamieniamy "i" na "iiwqjefoiqwjefoiqwjefoiqjwefoijqwoefijqwoiefjowiqjefoiqwjef"
i ponownie:
gcc test.c -O0 -g -o test_long_dbg
gcc test.c -O3 -o test_long_rel
i mamy wynik:
-rwxrwxr-x 1 0 0 17352 Mar 22 20:12 test_long_dbg
-rwxrwxr-x 1 0 0 15968 Mar 22 20:11 test_long_rel