Mudanças entre as edições de "Estruturas em C"
Ir para navegação
Ir para pesquisar
Linha 35: | Linha 35: | ||
:atribui valor ao segundo campo da estrutura name. | :atribui valor ao segundo campo da estrutura name. | ||
+ | Programa exemplo: | ||
+ | #include <stdio.h> | ||
+ | #include <string.h> | ||
+ | struct nametype{ | ||
+ | char first [10]; /*Tipo string*/ | ||
+ | char midinit; /*Tipo char*/ | ||
+ | char last [10]; /*Tipo string*/ | ||
+ | }; | ||
+ | void main () | ||
+ | { | ||
+ | struct nametype name; | ||
+ | strcpy (name.first,"João"); | ||
+ | name.midinit = 'C'; | ||
+ | strcpy (name.last,"Silva"); | ||
+ | printf("Nome completo: %s %c. %s\n", name.first, name.midinit, name.last); | ||
+ | } | ||
Edição das 20h41min de 8 de junho de 2014
Estruturas em C
Uma estrutura em C é um uma estrutura de dados em forma de um registro com vários campos.
- Criação de uma estrutura
- Para a criação de uma estrutura utiliza-se o comando struct e atribui-se um nome para a estrutura, o qual é depois utilizado para declarar variáveis deste tipo.
Exemplo[1]:
struct nametype{ char first[10] ; char midinit ; char last[20] ; };
struct nametyte name;
- A primeira declaração cria uma estrutura de nome nametype com três campos, na qual o primeiro (first) e o terceiro (last) são strings e o segundo (midinit) é um caracter.
- A segunda declaração cria a variável name do tipo da estrutura nametype.
Uma alternativa ao uso de um nome de estrutura é utilizar a definição de tipo typedef de C. Por exemplo:
typedef struct { char first[10] ; char midinit ; char last[20] ; } NAMETYPE;
Depois pode-se utilizar o novo tipo criado para declarar varáveis do tipo da estrutura criada:
NAMETYTE name;
- Observe que os nomes de estruturas são convencionalmente escritos com letras minúsculas, mas os especificadores de typedef são escritos com letras maiúsculas ao apresentar programas em C
- Acesso aos campos da estrutura
- Cada campo da estrutura pode ser acessado especificando o nome da variável e no nome do campo correspondente.
Por exemplo:
printf("%s", name.first);
- pode ser usada para imprimir o primeiro nome na estrutura name, e a instrução:
name.midinit = 'M';
- atribui valor ao segundo campo da estrutura name.
Programa exemplo:
#include <stdio.h> #include <string.h> struct nametype{ char first [10]; /*Tipo string*/ char midinit; /*Tipo char*/ char last [10]; /*Tipo string*/ }; void main () { struct nametype name; strcpy (name.first,"João"); name.midinit = 'C'; strcpy (name.last,"Silva"); printf("Nome completo: %s %c. %s\n", name.first, name.midinit, name.last); }
Referências
- ↑ TENENBAUM, A. A.; LANGSAM, Y.; AUGENSTEIN, M.J. Estruturas de dados usando C, São Paulo: Makron Books, 1995.
- Autoria
- Evandro Cantú - IFPR, Câmpus Foz do Iguaçu