Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: QtCreator почему строка текста, начинающаяся с двух вопросов, подсвечивается серым
Форум на CrossPlatform.RU > Разработка > Инструменты разработчика
Steklova Olga
Всем привет :)
В QtCreator (у меня 3.2.1) строка текста, начинающаяся с двух или более стоящих подряд символов вопроса (?? или ???), подсвечивается почему-то серым цветом, хотя при компиляции файла выдается ошибка.
Такая строка имеет какой-то особый смысл?
ViGOur
Начнем с того, имеет ли такая строка смысл с позиции С\С++? :)
Steklova Olga
Нет, компилятор выдает ошибку.
Но QtCreator-то подсвечивает такие строки зачем-то.
Комментарии, например, на код программы не влияют. Но, если их оформить особым образом, то их воспримет Doxigen.
ahalaj
Всё просто. Потому что строки, начинающиеся с "??", трактуются как триграфы.

Цитата(Steklova Olga @ 17.9.2015, 13:36) *
Нет, компилятор выдает ошибку.

Значит или данная комбинация не является валидным триграфом (после "??" должен идти конкретный символ, какой конкретно -- в википедию), или у компилятора выключена поддержка триграфов, или компилятор вообще триграфы не умеет.

Цитата(Steklova Olga @ 17.9.2015, 13:36) *
Но QtCreator-то подсвечивает такие строки зачем-то.

А QtCreator получается в курсе насчёт триграфов и именно строки с ними и подсвечивает.

Цитата(ViGOur @ 16.9.2015, 18:00) *
Начнем с того, имеет ли такая строка смысл с позиции С\С++? :)

Имеет. Во всяком случае пока что имеет. Правда уже не во всех компиляторах. А в будущем вообще собираются убрать поддержку этого безобразия, пришедшего из лохматых годов.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.