Macros em c

Macros em c

“Como você sabe, C é uma linguagem de uso geral bastante diversa e criou muitas estruturas diferentes. As macros na linguagem C são úteis ao trocar seu código grande com um único código de linha para evitar complexidade e mais. As macros podem ser utilizadas nos códigos C usando a palavra -chave "#Define". Embora as macros tenham muitos tipos, demonstraremos o uso de macros semelhantes a objetos e macros do tipo função neste artigo. Vamos ter um novo começo neste guia, atualizando -o no shell pela consulta "atualização" mostrada na imagem em anexo. Forneça esta consulta com sua senha do Linux para continuar o processamento.”

Agora, configure o utilitário GCC do Linux para a compilação de seus códigos C nos exemplos justos. Para isso, use o utilitário "apt" com a consulta "instalar" e a palavra -chave "gcc".

Agora, você precisa de um arquivo de código C no qual você colocará algum código C para brincar com diferentes entradas e saídas. Assim, recomendamos experimentar a instrução "Touch" em seu shell Linux para qualquer tipo de criação de arquivos. Use o ".Extensão C ”no final de um arquivo para identificar C. Sua recém -gerada “macro.O arquivo C ”seria salvo na pasta inicial do Linux Current.

Exemplo 01

Abra seu novo arquivo C para criar nosso primeiro exemplo para macros semelhantes a objetos. Você pode usar qualquer editor por opção. Se você é um desenvolvedor de especialistas C, é recomendável usar o editor "GNU Nano" e, se você é apenas um iniciante, tente o editor "Text". Ambos os editores são bastante atraentes e fáceis de usar para iniciantes. Dentro deste arquivo de código, estamos adicionando a palavra -chave "#include" com o cabeçalho "" C no início, pois é uma biblioteca C para usar entradas padrão e obter saídas padrão usando funções C simples.

Agora, definiremos uma macro como um objeto usando a palavra -chave "definir". Esta macro semelhante a um objeto é usada para inicializar uma variável chamada "val" com um valor de 14. Não adicionamos nenhum ""; Personagens após a declaração de inicialização, porque é assim que as macros funcionam e não requerem a mesma estrutura completa de variáveis ​​ou funções. Esta variável macro pode ser utilizada em qualquer lugar do código. Estamos iniciando nossa função principal () para execução com a função "printf ()". Esta função printf () simplesmente exibe um valor de tipo de string junto com o uso da variável macro "val" para exibir seu valor.

Salvaremos este código simples e básico para a utilização de macro do tipo objetos em C em C.

#incluir
#Define Val 14
int main ()
printf ("Valor definido como macro: %d \ n", val);

Após a economia de arquivos, sua compilação é uma obrigação quando você está trabalhando com idiomas de uso geral como C. Portanto, para a compilação de código C acabado de concluir, estamos lançando o comando "GCC" com o nome do arquivo "Macro.C ”. Este comando compilará o código dentro da macro.arquivo c e exibir os erros; caso existam. Agora que nosso código está totalmente compilado e sem erros, estamos lançando o “./a.OUT ”instrução no console para executar o código compilado. A saída deste código C permite exibir a mensagem da string junto com um valor de uma variável macro semelhante a um objeto, i.e., exibiu o valor 14 para variável semelhante a objetos "val".

Exemplo 02

Aqui vem a ilustração de uma macro semelhante à função na qual definiremos uma função macro que funciona da mesma forma que uma função sem tipos de retorno. Assim, estamos definindo um total de 3 macros do tipo função após o stdio.h cabeçalho no código C mostrado. Todas as três macros realizam operações diferentes em valores variáveis ​​"x" e "y", que serão passados ​​pela função principal (), i.e., soma, multiplique e subtrair. Duas variáveis ​​inteiras, V1 e V2, são inicializadas no método Main () e três instruções printf () são usadas para exibir os resultados calculados chamando as macros do tipo função.

A macro soma () calculará uma soma usando a lógica (x+y), a macro do tipo Mul () calculará o resultado da multiplicação usando a lógica (x*y) e a macro do tipo função sub () subtrair as duas variáveis ​​usando a lógica (x-y). É isso para as três macros do tipo função; Nós os salvaremos antes da compilação.

#incluir
#Define soma (x, y) x+y
#Define mul (x, y) x*y
#Define sub (x, y) x-y
int main ()
int v1 = 7, v2 = 14;
printf ("soma: %d \ n", soma (v1, v2));
printf ("Multiply: %d \ n", mul (v1, v2));
printf ("Subtract: %d \ n", sub (v1, v2));

Após a compilação e a execução do código C, a saída exibiu com sucesso a soma, multiplicar e o resultado da subtração usando as macros do tipo função.

Exemplo 03

Vamos dar uma olhada no último exemplo de macros do tipo função. Definimos uma função macro tomando duas variáveis, "V" e "L" e usando o loop while para executar a parte "" de um código, eu.e., até que o valor de "V" seja menor que "L". A parte “” continuará imprimindo “macro” no shell usando o printf () até que o valor “V” seja igual ao valor “L” usando o incremento em “V”. A função Main () está inicializando a variável "V" com o valor "0". A chamada para a macro do tipo função usa a variável "V", além de passar o valor "10" para a variável "L" para definir um limite para uma estrutura de "loop". Agora, a instrução print () na macro do tipo função continuaria exibindo "macro" na tela de saída até que a variável "V" atinja "10".

#incluir
#Define Macro (V, L) enquanto (V < l) \
\
printf ("macro"); \
v ++; \

int main ()
int v1 = 0;
Macro (v, 10);

É hora de salvar o código C, compilar e executá -lo como fizemos na imagem abaixo. A saída deste novo código C mostra a exibição da palavra "macro" 10 vezes repetida. Isso ocorre porque usamos o loop "while" para continuar exibindo -o até que "V" chegue a "l" i.e., L = 10.

Conclusão

Este guia explicou o objetivo de usar as macros em C dentro do parágrafo introdutório e alguns exemplos muito simples para demonstrar que. Tentamos usar as macros semelhantes a objetos e as macros do tipo função nos três exemplos consecutivos de C e esperamos.