Supponiamo di definire BAR in foo.h. Ma foo.h potrebbe non esistere. Come posso includerlo, senza che il compilatore si lamentasse con me?Come si include un file di intestazione che può o non può esistere?
#include "foo.h"
#ifndef BAR
#define BAR 1
#endif
int main()
{
return BAR;
}
Pertanto, se BAR è stata definita come 2 in foo.h, allora il programma ritornerebbe 2 se foo.h esiste e 1 se foo.h non esiste.
Fornire il proprio fallback foo.h che definisce 'BAR' e configurare il percorso di ricerca del compilatore di conseguenza? –
Suppongo che potrei farlo. Perché il fallback foo.h dovrebbe includere qualcosa? – theanine
possibile duplicato di [È possibile utilizzare il preprocessore C per stabilire se esiste un file?] (Http://stackoverflow.com/questions/142877/can-the-c-preprocess-be-used-to-tell-if- a-file-exists) –