C++

индекс
236,98

"\" в конце строки в C/C++

Покажет ли ваш редактор/IDE, что «a++;» в этом C/C++ коде — часть комментария?
int a=1;
//some comment \
a++;
printf("%d\n",a);


А такой вариант?
int a=1;
//some comment ??/
a++;
printf("%d\n",a);
–1
5 марта 2010, 06:16
kit

комментарии (17)

0
metaball #
В студии показывает.
0
kit #
А такой вариант?

int a=1;
//some comment ??/
a++;
printf("%d\n",a);
0
metaball #
А такой уже нет, и разбитые ключевые слова тоже нет, но честно говоря, если у меня в файле идёт такое разбиение, то подсветка мало поможет.
0
kit #
Ну разбитые ключевые слова вряд ли кому-то нужно подсвечивать.
А вот вариант с комментарием вполне может встретиться на практике.
0
kit #
Немного отредактировал пост — убрал про разбитые ключевые слова и добавил про триграф.
+4
GooRoo #
0
kit #
Ага, но тут вопрос не только в триграфах.
Emacs, например, не подсвечивает правильно даже первый вариант.
+1
SabMakc #
Notepad++ тоже не подсветил (оба варианта), но при этом нормально отработал с "\" в define
+4
Imposeren #
vim. Всё нормально лишь для первого случая
+1
iley #
Я поправил файл syntax/c.vim и теперь у меня в обоих случаях всё правильно работает.
0
Volfram #
Eclipse CDT — верно для первого, неверно для триграфа.
0
MefBezTufel #
Understand Analyst — оба варианта не подсветил.
0
domrik #
Шестой билдер не подсвечивает как комментарий
+1
Lockal #
Qt Creator 1.3.0 не подсвечивает, но gcc 4.4 в обоих случаях выводит предупреждения.
+2
Veminz #
Мне больше интересно, чтоб кто-нибудь показал хоть один реальный случай, где в C/C++ в современном мире нельзя обойтись без использования триграфов.
Множество нынешних С++ программистов даже и не подозревает что это такое, и слава богу.
0
kit #
Такого случая нет и не будет. Это ж для старых компьютеров/клавиатур придумано.
0
voiza #
… и слава богу, что умеют отключить их опцией -Wtrigraphs -Werror.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.