Estruturas em C
De Wiki Cursos IFPR Foz
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 com o comando typedef do C e depois utilizar o novo tipo criado para declarar varáveis do tipo da estrutura criada. Por exemplo:
typedef struct {
char first[10] ;
char midinit ;
char last[20] ;
} NAMETYPE;
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
- Autoria
- Evandro Cantú / IFPR - Câmpus Foz do Iguaçu