QtCreator: множество ошибочных ошибок - PullRequest
4 голосов
/ 04 февраля 2011

Проект был в порядке, работает нормально, компилируется нормально. До некоторого, казалось бы, случайного времени, оно перестало быть нормальным.

На данный момент я получаю около 200 случайных ошибок:

./new:4: error: stray '\376' in program
./new:4: error: stray '\377' in program
./new:5: error: stray '\376' in program
./new:5: error: stray '\377' in program

Судя по прочтению других постов, в моем коде есть плохие символы, которые я не вижу. Поэтому я опустошил весь файл, над которым работал, но не повезло. Эта ошибка сохраняется, что бы я ни делал.

Кроме того, при компиляции main.cpp (что он делает первым) он в первую очередь включает в себя #include, которое является началом цепочки сообщений "from 'file'". Это означает, что он еще не проанализировал большую часть файла main.cpp, но не работает с чтением внутренних файлов Qt?

Я полностью смотрю в темноту, что бы это могло быть, и как бы я решил это?

Спасибо!

Я использую Qt 4.7.2, GCC 4.5.0 и Win7.

Ответы [ 4 ]

3 голосов
/ 04 февраля 2011

Octal \376 \377 равно 0xFEFF, что является меткой байтового порядка Unicode .Он используется для сигнализации о порядке байтов текстового файла UTF-16, а также для сигнализации о том, что файл имеет кодировку UTF-8.Это должно происходить только в начале файла, но, похоже, оно проникло в комментарии заголовка в файле заголовка вашей библиотеки new, в строках 4 и 5. Найдите этот файл и удалите эти строки.(Но только если это комментарии!)

3 голосов
/ 04 февраля 2011

Скопируйте ваш код в блокнот и сохраните его. Затем удалите ваш main.cpp и добавьте один блокнот в ваш проект. Восстановите и проверьте результат. Если это все еще сохраняется, то, скорее всего, проблема не в вашем источнике, а в библиотеках Qt или gcc и / или gnulibc. Возможно, они повреждены или хранятся в другой неподдерживаемой кодировке.

1 голос
/ 04 февраля 2011

для меня такие вещи случались в прошлом, когда я копировал источник с какой-то веб-страницы.Только печатая это снова решило проблему.Но, возможно, какой-то инструмент для преобразования кодировки также может решить эту проблему.

0 голосов
/ 04 февраля 2011

Ваш исходный файл, вероятно, закодирован в UTF-16 или что-то подобное.

Попробуйте скопировать код в новый файл и посмотрите, поможет ли это.

...