Pull to refresh

Comments 17

А такой вариант?

int a=1;
//some comment ??/
a++;
printf("%d\n",a);
А такой уже нет, и разбитые ключевые слова тоже нет, но честно говоря, если у меня в файле идёт такое разбиение, то подсветка мало поможет.
Ну разбитые ключевые слова вряд ли кому-то нужно подсвечивать.
А вот вариант с комментарием вполне может встретиться на практике.
Немного отредактировал пост — убрал про разбитые ключевые слова и добавил про триграф.
Ага, но тут вопрос не только в триграфах.
Emacs, например, не подсвечивает правильно даже первый вариант.
Notepad++ тоже не подсветил (оба варианта), но при этом нормально отработал с "\" в define
Я поправил файл syntax/c.vim и теперь у меня в обоих случаях всё правильно работает.
Eclipse CDT — верно для первого, неверно для триграфа.
Шестой билдер не подсвечивает как комментарий
Qt Creator 1.3.0 не подсвечивает, но gcc 4.4 в обоих случаях выводит предупреждения.
Мне больше интересно, чтоб кто-нибудь показал хоть один реальный случай, где в C/C++ в современном мире нельзя обойтись без использования триграфов.
Множество нынешних С++ программистов даже и не подозревает что это такое, и слава богу.
Такого случая нет и не будет. Это ж для старых компьютеров/клавиатур придумано.
… и слава богу, что умеют отключить их опцией -Wtrigraphs -Werror.
Sign up to leave a comment.

Articles