2016-01-18 2 views
-1

У меня есть программа, которая делает сумму a и b (чтение из файла) и записывает ее в файл. Проблема возникает при компиляции кода. errorXCode Проблема при компиляции кода C

Я понятия не имею, почему я получаю эту ошибку, потому что на окнах тот же код работает отлично. Спасибо.

+1

Всегда проверяйте, успешно ли открыт файл. (do a if (in)) –

+0

Вы уверены, что «adurane.in» существует и читается, поэтому 'in' не NULL? – nsilent22

+2

Пожалуйста, разместите код как текст ... –

ответ

1

Скорее всего, неправильное использование относительных путей - Xcode не запускает исполняемый файл в папке, где находится источник (даже если он пытался: что делать, если источник находится в нескольких папках?), Поэтому in - NULL, и поэтому fscanf имеет неопределенное поведение.

В общем случае, если вы знаете, что текущий рабочий каталог при запуске из среды IDE или из графического интерфейса является изворотливым.

+1

Так что мне нужно поместить весь путь в файл «adunare.in»? –

+0

Либо это, либо сделать явный вызов метода POSIX 'chdir', или просто взять местоположение ввода в качестве параметра, как если бы вы были утилитой командной строки. В Xcode вы можете щелкнуть по имени вашего проекта в верхней строке рядом с кнопкой остановки, выбрать «Редактировать схему ...» и использовать вкладку «Аргументы» против цели «Запустить», чтобы указать подходящий путь и имя файла. В C вы также можете использовать 'getcwd' для получения текущего рабочего каталога, если вам интересно, но Xcode не гарантирует ничего, поэтому, вероятно, это не очень полезный способ. – Tommy

Смежные вопросы