gcc 3.3.4 Тестовая программа из двух файлов: #cat main.c int main() { print_msg("russian"); print_msg("english"); return 0; } #cat print_msg.c void print_msg(char * msg_type) { printf("%s\n", msg_type == "russian" ? "RUS" : "ENG"); } #cc main.c print_msg.c #./a.out ENG ENG #cc -O2 main.c print_msg.c #./a.out RUS ENG Ничего не понимаю. Почему оптимизация так dramatically влияет на выполнение программы?