Редактор Xcode не включает stdio.h - PullRequest
0 голосов
/ 19 октября 2019

Я разрабатываю инструмент командной строки в XCode (упражнение для университета), но редактор не может включить стандартный заголовочный файл C, который обеспечивает функции ввода-вывода и файлов. Когда я компилирую, сборка завершается успешно, так что проблема в том, что редактор показывает раздражающие ошибки. Я попытался установить инструменты командной строки Xcode 11 с сайта Apple Developer, а также инструменты для бета-версии Xcode 11.2. Я не могу найти те для Xcode 11.1, который является версией, которую я использую в настоящее время (сборка 11A1027).

Example of error shown

1 Ответ

0 голосов
/ 19 октября 2019

Очевидно, Xcode действительно включает stdio.h. Но проблема в том, что действительный код stdio.h может иногда сообщать о множестве ошибок в Xcode IDE.

Я испытал то же поведение, которое вы описали. В моем случае, даже когда код был исправлен, XCode все еще сообщал о предполагаемых «ошибках». Интересно, что хотя IDE и сообщала об этих ошибках, это нормально создавало бы приложение.

Для меня это неверное сообщение об ошибках в IDE исчезло, когда я очистил папку «производные данные»:

  1. найдите папку с производными данными, перейдите в настройки команда + , , выберите «Местоположения», а затем нажмите стрелку рядом с «производными данными»путь:

    enter image description here

  2. выйти из Xcode;

  3. очистить «производные данные»папки;и

  4. перезапустите Xcode.


И, конечно, добавьте недостающие *:

#import <stdio.h>

int main(int argc, const char * argv[]) {
    FILE *fp;

    fp = fopen("test.txt", "w");
    if (fp) {
        fputs("example\n", fp);
        fclose(fp);
    }

    return 0;
}
...