C или C++?
Как узнать, компилятором какого языка (C или C++) скомпилирована программа
Задача: программа должна вывести строку “С++”, если скомпилирована на С++ и “С”, если на С. #include <stdio.h> int main(void) { char s[4] = "C++"; s[sizeof('c') - 1 ? 1 : 3] = 0; printf("%s\n", s); return 0; } $ g++ test.c -o test && ./test C++ $ gcc test.c -o test && ./test C Мораль: [...]
← Вернуться к полной версии записи «C или C++?»…
Автор: Vladimir; опубликовано в: C/C++; метки: C/C++19
Апр
2009
Апр
2009
Комментарии к статье «C или C++?» (3) »
Пожалуйста, не используйте эту форму для комментирования! Данная форма предназначена исключительно для ботов.
Оставить комментарий к записи «C или C++?»
गते गते पारगते पारसंगते बोधि स्वाहा
Меня зовут Владимир, я программист-фрилансер, специализирующийся на Web-программировании и програмировании под Linux.
По совместительству занимаюсь администрированием LAMP/LNMP-серверов и техническим переводом.


Опечатался:
printf("%s\n", s);Ну, и не плохо бы было объяснить, кто не знает (я, например), почему в C
sizeof('c') != 1?Или хотя бы proof-link.
Спасибо!
Спасибо, поправил.
По поводу
sizeof: в C'c'имеет типint, а в C++ —char.Пруфлинк.
Вот, теперь все ясно!
Просто никогда не программил на Си, по-этому и таких тонкостей не знал.