Resultados da pesquisa a pedido "c-preprocessor"

3 a resposta

Como resolver a variável int antes de passar para macros C / C ++? [fechadas]

Estou tentando executar o seguinte código: #define channel1 10 #define channel(id) channel##id int main(){ int id = 1; cout << channel(id)<<"\n"; return 0; }Estou tendo o erro a seguir:error: use of undeclared identifier 'channelid' Em vez ...

11 a resposta

Boas práticas de programação para definições de macro (#define) em C [fechado]

Por exemplo, nunca defina uma macro como esta: #define DANGER 60 + 2Isso pode ser potencialmente perigoso quando fazemos uma operação como esta: int wrong_value = DANGER * 2; // Expecting 124Em vez disso, defina assim, porque você não sabe como ...

4 a resposta

Qual é a diferença entre constantes macro e variáveis constantes em C? [duplicado]

Possível duplicado: "Const static" vs "#define" em C [https://stackoverflow.com/questions/1674032] Comecei a aprender C e não conseguia entender claramente as diferenças entre macros e variáveis constantes. O que muda quando eu ...

7 a resposta

Por que apenas definir uma macro se ela ainda não estiver definida?

Em toda a nossa base de código C, vejo todas as macro definidas da seguinte maneira: #ifndef BEEPTRIM_PITCH_RATE_DEGPS #define BEEPTRIM_PITCH_RATE_DEGPS 0.2f #endif #ifndef BEEPTRIM_ROLL_RATE_DEGPS #define BEEPTRIM_ROLL_RATE_DEGPS 0.2f ...

2 a resposta

Acessando o valor de uma definição de Macro de Pré-processador

Se eu adicionar uma macro "FOO = bar" em GCC_PREPROCESSOR_DEFINITIONS (ou macros de pré-processador, se você usar o XCode "), qual seria a melhor maneira de acessar o valor de" FOO "? Atualmente, eu uso o desajeitado: #define MACRO_NAME(f) #f ...

3 a resposta

MSVC não expande __VA_ARGS__ corretamente

Considere este código: #define F(x, ...) X = x and VA_ARGS = __VA_ARGS__ #define G(...) F(__VA_ARGS__) F(1, 2, 3) G(1, 2, 3)A saída esperada éX = 1 and VA_ARGS = 2, 3 para ambas as macros, e é isso que estou recebendo com o GCC, no entanto, o ...

1 a resposta

O que os números significam nos arquivos .i pré-processados ao compilar C com o gcc?

Estou tentando entender o processo de compilação. Podemos ver o arquivo intermediário do pré-processador usando: gcc -E hello.c -o hello.iou cpp hello.c > hello.iEu sei aproximadamente o que o pré-processador faz, mas tenho dificuldades em ...

6 a resposta

Existe uma maneira de fazer um #define dentro de outro #define?

Eu sei que estou tentando me dar um tiro na perna;) No entanto, isso permitirá que o restante (grande quantidade) de código seja menor e mais legível. Existe alguma maneira complicada de criar macro de pré-processador dentro de outra macro de ...

9 a resposta

C / C ++ precisa de uma maneira inteligente de rastrear chamadas de função

Estou procurando uma maneira inteligente de rastrear chamadas e retornos de funções. Eu sei que posso usar o depurador, mas gostaria de ter uma maneira de imprimir algo no terminal ao chamar uma função vs precisar passar pelo código. Estou ...

2 a resposta

Sobrecarregar macro de pré-processador C / C ++ na estrutura de seu argumento

Gostaria de escrever uma macro de pré-processador que faça uma coisa se seu argumento for uma tupla de tokens entre parênteses, assim: MY_MACRO((x, y))e outra coisa, se for apenas um único token, como este: MY_MACRO(x)Isso é possível? Que tal ...