Лучший способ программно проверить на существование заголовочного файла?

Это должно только протестировать, компилируют простую программу, с тем заголовочным файлом #included в нем?

Для лучше понимания процесса компиляции, я пишу, что мои собственные "настраивают", который тестирует на существование некоторых файлы библиотеки и заголовок.

5
задан user258961 1 March 2010 в 02:43
поделиться

3 ответа

Да, используйте компилятор для компиляции вашей простой тестовой программы. Это лучший и самый простой способ узнать, может ли компилятор найти заголовок. Если вы жестко запрограммируете #include пути поиска, вам всегда придется изменять и адаптировать для разных компиляторов.

6
ответ дан 14 December 2019 в 01:06
поделиться

Пакет GNU Autoconf проверяет наличие заголовков путем выполнения тестовых компиляций. Проверить наличие файла 'filename.h' довольно просто:

#include <filename.h>
int main(void){return 0;}

Вы можете предпочесть кавычки вместо угловых скобок.

4
ответ дан 14 December 2019 в 01:06
поделиться

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

#include<stdio.h>
main()
{
        FILE * file;
        if ((file = fopen("/usr/include/stdio.h", "r"))!=NULL)
        {
                fclose(file);
                printf("true");
        }
        perror("err");

}
-1
ответ дан 14 December 2019 в 01:06
поделиться