Sintaxe da estrutura:
A declaração da estrutura é mostrada na imagem abaixo. Começa com a palavra -chave "estrutura" junto com qualquer nome de estrutura que tenha sido dado a ele. Dentro do corpo de uma estrutura, podemos definir muitas variáveis de qualquer tipo. O corpo da estrutura seria fechado com ";". Para passar uma função, usaremos dois métodos neste guia. Vejamos os dois métodos.
Exemplo 01: Passe a estrutura para uma função por valor
O primeiro método para passar uma estrutura para uma função é através do valor. Vamos usar esse método para criar um arquivo C no shell usando uma consulta de toque.
$ touch exp.c
Depois de criar um arquivo, você deve abri -lo em algum editor, eu.e., Editor do GNU Nano, usando o comando declarado abaixo.
$ nano exp.c
Após a abertura do arquivo, escreva o código dentro do arquivo, como mostrado na imagem. A primeira linha contém o cabeçalho. Uma estrutura "humana" foi declarada com duas variáveis. Um é a variável de caractere "nome" do tamanho "30". Outro é uma variável do tipo inteiro usada para armazenar a idade de um humano. A entrada foi fornecida por um usuário no tempo de execução usando o método scanf. Esta entrada foi salva nas variáveis da estrutura usando os objetos. Depois disso, a estrutura foi passada para o método definido pelo usuário, mostra () como um argumento. É uma chamada de função para o método mostra (). O método de show tem tomado estrutura em seu parâmetro como valor. Os valores variáveis da estrutura foram exibidos no console através da instrução PRINTF usada na função definida pelo usuário, mostrando ().
Salve seu arquivo usando a chave de atalho Ctrl+S. Depois disso, voltei ao terminal usando o atalho "Ctrl+X". Temos que compilar o código acima mencionado primeiro. O compilador "GCC" foi utilizado para esse fim. No final, a execução de um arquivo ocorre. O usuário adicionou seu nome e idade. A estrutura foi passada para mostrar () método como valor. Os valores da estrutura foram exibidos abaixo.
$ GCC Exp.c
$ . /a.fora
A saída bem -sucedida pode ser vista na janela do terminal do Ubuntu 20.04.
Exemplo 02: Passe a estrutura para uma função por referência
Agora, vamos começar com esta ilustração. Neste exemplo, estaremos analisando a estrutura que será passada para um método definido pelo usuário por meio de referência. Neste método, toda a estrutura ou valores não foram passados para outra função. O endereço de estrutura de memória da variável seria passado para o método como uma referência. Então, abrimos o mesmo arquivo, “exp.C ”para atualizá -lo. Incluiu o cabeçalho padrão de entrada e saída. Criamos uma nova estrutura chamada "Cal" com duas variáveis do tipo inteiro N1 e N2. O objeto de referência da estrutura "cal" foi criado. O protótipo da função do método "sum ()" foi declarado antes do método principal.
A função principal contém o método scanf () para contratar informações do usuário no momento da execução. Os valores foram passados para as variáveis de estrutura por referência usando seus endereços de memória. O sinal "&" foi usado aqui para vincular os endereços de memória das variáveis de estrutura com os valores inseridos pelo usuário. O endereço e os valores de um objeto variável "C" e "Total" foram passados para a função "soma" como uma referência.
A função "soma" tem recebido os valores das variáveis de estrutura N1 e N2 por referência do objeto "C" e adicionando -as. Os valores resultantes foram salvos na variável n1. O método principal exibe a soma de ambas as variáveis.
Compilar e executar o código. O usuário adicionou dois números e a soma de ambos os números foi exibida. O GCC e “A.os comandos de fora ”foram utilizados aqui.
$ GCC Exp.c
$ . /a.fora
A saída bem -sucedida pode ser vista na janela do terminal do Ubuntu 20.04.
Conclusão:
Este artigo contém a implementação de uma estrutura de passagem para uma função definida pelo usuário na linguagem C. Duas abordagens foram utilizadas para esse fim, eu.e., por valor e referência. Enquanto aprende a passar uma estrutura para funcionar na linguagem de programação C, você pode utilizar os dois métodos. Esperamos.