Registros
Registros
Um Registro, ou estrutura, permite que várias variáveis sejam armazenadas dentro de um objeto, facilitando relacionar diferentes variáveis. Isso pode ser feito a partir do método struct, que funciona na seguinte sintaxe:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <string.h>
// define classe documento
struct documento{
char nome[128];
char cpf[128];
int idade;
float peso;
};
int main(){
// define o objetos a,b
struct documento a, b;
strcpy(a.nome, "Tobias");
strcpy(a.cpf, "111.222.333/44");
a.idade=28;
a.peso=67.9;
printf("A idade de %s é %d",a.nome,a.idade);
return 0;
}
Typedef
O comando typedef permite definir novos tipos de variáveis, como por exemplo: int, float, double. Ele pode ser utilizado para simplificar a sintaxe na definição de objetos de uma classe. Por exemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdio.h>
#include <string.h>
// define classe documento
struct documento{
char nome[128];
char cpf[128];
int idade;
float peso;
};
// define um tipo para a classe
typedef struct documento doc;
int main(){
// struct documento a, b = doc a,b
doc a,b;
strcpy(a.nome, "Tobias");
strcpy(a.cpf, "111.222.333/44");
a.idade=28;
a.peso=67.9;
printf("A idade de %s é %d",a.nome,a.idade);
return 0;
}
Enum
Similarmente ao typedef, o método enum gera um novo tipo, porém agora listado de acordo com a ordem das entradas, numerado. Isto pode ser observado no exemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
enum meses {jan, fev, mar, abr, mai, jun, jul, ago, set, out, nov, dez};
int main(){
enum meses a,b;
a = jan;
b = jun;
if (a!=b){
printf("%d é diferente de %d",a,b);
}
//-> Será printado '0 é diferente de 5'
return 0;
}
This post is licensed under CC BY 4.0 by the author.