Resultados da pesquisa a pedido "c-preprocessor"
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 ...
Como concatenar, avaliar e restringir macros?
Estou tentando restringir a substituição (avaliação) de uma concatenação de macro. Por exemplo: #include <stdio.h> #define FOO_ONE 12 #define FOO_TWO 34 #define BAR_ONE 56 #define BAR_TWO 78 #define MAKE_MAC(mac) // ... what to do here? void ...
Como interpretar linhas pré-fixadas em # na saída do pré-processador C?
A seguir está o código do hello.c: #include <stdio.h> int main (void) { printf ("Hello, world!\n"); return 0; }Eu usei o comandogcc -E hello.c pré-processá-lo e obteve a seguinte saída: # 1 "hello.c" # 1 "<built-in>" # 1 "<command-line>" # ...
Definição condicional de elementos em uma macro X
Imagine que eu tenho umX Macro [https://en.wikipedia.org/wiki/X_Macro]para uma lista de itens definidos mais ou menos assim: #define X_MACRO(FN) \ FN(foo) \ FN(bar) \ FN(zip)Isso funciona muito bem e posso chamá-lo para gerar o mesmo código ...
Por que todos os arquivos C escritos pelo meu palestrante começam com um #?
Por que todos os arquivos C escritos pelo meu palestrante começam com um #? Estou passando por algumas anotações do curso C ecada O arquivo de origem do programa C começa com um único# na primeira linha do programa. Depois, há espaços em branco ...
Pré-processador: concatene a string para cada argumento em __VA_ARGS__
Eu gostaria de acrescentar um argumento de macro estrito a cada elemento em uma macro variável. Acho que sei o que preciso, mas ainda não consegui encontrar uma solução funcional. Dada uma macro variável, como: #define FIELD_DECLARATION(NAME, ...
Por que essa substituição de macro aninhada está falhando?
Estou tentando aplicar oX Macro [https://stackoverflow.com/questions/6635851/real-world-use-of-x-macros] conceito, para ter a possibilidade de inicializar todos os membros da estrutura para um valor padrão (inválido) personalizado. Eu escrevo o ...
Por que definir uma macro com o mesmo nome e conteúdo em C?
Eu estou olhandoif_link.h nos cabeçalhos do kernel do Linux e ele contém esta enumeração: enum { IFLA_UNSPEC, IFLA_ADDRESS, IFLA_BROADCAST, IFLA_IFNAME, IFLA_MTU, IFLA_LINK, IFLA_QDISC, IFLA_STATS, IFLA_COST, #define IFLA_COST ...
Por que não concatenar arquivos de origem C antes da compilação? [duplicado]
Esta pergunta já tem uma resposta aqui: # incluir todos os arquivos .cpp em uma única unidade de compilação? [/questions/543697/include-all-cpp-files-into-a-single-compilation-unit] 5 respostasOs benefícios / desvantagens da unidade constrói? ...
Tokens válidos de pré-processador na concatenação de macro
Tentei entender as macros em c usando o operador de pré-processador de concatenação ##, mas percebi que tenho problemas com tokens. Eu pensei que era fácil, mas na prática não é. Portanto, a concatenação é para concatenar dois tokens para criar ...