Я компилирую свою программу, которая будет работать на linux gcc 4.4.1 C99.
Я просто вставлял свои #defines, чтобы отделить код, который будет скомпилирован либо в Windows, либо в Linux. Однако я получил эту ошибку.
error: macro names must be identifiers.
Используя этот код
#ifdef(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
Однако когда я перешел на это, ошибка была исправлена:
#if defined(WIN32)
/* Do windows stuff
#elif(UNIX)
/* Do linux stuff */
#endif
Мне просто интересно, почему я получил эту ошибку и почему #defines разные?
Большое спасибо,