2016-06-21 10 views
-1

У меня странное поведение на моем компьютере, когда я предварительно скомпилировал исходный файл .pc. Я использую команду командной строки, например «proc wpd_ric_pla_02.pc wpd_ric_pla_02.c CODE = ANSI_C». Если я скомпилирую тот же исходный файл на другом компьютере с той же самой версией proc (11.1.0.7.0), вместо этого у меня нет проблем. Прилагаю изображение, показывающее некоторые отличия в .c сгенерированном. Image Вы можете видеть слева правильный .c и, справа, .c, сгенерированный на моей машине. SQL-инструкции ошибочно прокомментированы. Может кто-то, пожалуйста, помогите мне понять, почему это происходит? Спасибо, Себастьян.PRO * C компилировать неправильные комментарии

+0

NB: У меня нет проблем с другими исходными файлами .pc –

ответ

0

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

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

Вы можете проверить это, выполнив команду hexdump -c wpd_ric_pla_02.pc, если вы находитесь в Linux. Если вы используете Windows, я предлагаю вам использовать функцию Notepad ++ View/Show Symbol/Show All Characters.

Если это не помогает, попробуйте изолировать проблему в одном запросе.

+0

Спасибо. Я уже пытался проверить его с помощью Notepad ++, чтобы скопировать файл обратно на мой компьютер с того, с которым он работает, а также переписать вручную некоторые фрагменты SQL, удалив все строки перед их записью. Исходный файл очень длинный, и я попытаюсь проверить его байтом по байту. –

+0

Еще раз. Я проверил исходный файл через java FileInputStream. Если read() возвращает каждый отдельный байт, он не содержит ничего странного. Только прямые каналы, возврат каретки (и каждый LF имеет свой собственный CR), вкладки, пробелы, стандартные символы ASCII (диапазон от 33 до 125) и куча ударных букв (à, è и т. Д.). –

+0

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