Controle de compilação
Algumas macros podem ser utilizadas para gerar avisos ou abortar a compilação.
Elas são :
#error mensagem
: Gera um erro de compilação, fazendo com que o compilador mostre amensagem
especificada.#warning mensagem
: Adicionado noC23
, gera um aviso do compilador, mostrandomensagem
mas não interrompe a compilação.
mensagem
pode ser um conjunto de várias palavras não necessariamente entre aspas (apesar do mais comum ser utilizar aspas).
Antes de ser padronizado, #warning
era suportado por vários compiladores como uma extensão.
Exemplo do uso de #error
:
#include <limits.h>
#if (CHAR_BIT * sizeof(void*)) < 32
#error "Este programa não funciona em arquiteturas menores que 32bits"
#endif