Академический Документы
Профессиональный Документы
Культура Документы
Estruturas
Estruturas
Estruturas
Declarao:
struct {
int x;
int y;
} p1, p2;
p1.x
p1
p1.y
p2.x
p2
p2.y
Declarao
Formato da declarao:
struct nome_da_estrutura {
tipo_1 dado_1;
tipo_2 dado_2;
...
tipo_n dado_n;
} lista_de_variaveis;
Repetio
struct ponto {
int x;
int y;
};
struct ponto p1, p2;
Estruturas
Ex:
p1.x = 10; /*atribuio */
p2.y = 15;
if (p1.x >= p2.x) &&
(p1.y >= p2.y) ...
Atribuio de Estruturas
220
p1.x
110
p1.y
p1
Atribuio de Estruturas
Composio de Estruturas
struct retangulo {
struct ponto inicio;
struct ponto fim;
};
struct retangulo r = { { 10, 20 }, { 30 , 40 } };
r.inicio.x += 10;
r.inicio.y -= 10;
200
r.inicio.x
110
r.inicio.y
220
r.fim.x
140
r.fim.y
ponto
retangulo
ponto
10
Operaes
Arrays de Estruturas
struct ponto arp[10];
/* cria um array de 10 pontos */
arp[1].x = 5; /*atribui 5 a coordenada x do 2 ponto */
arp[0].x
ponto
arp[0].y
5
ponto
arp[1].x
arp[1].y
...
arp[9].x
ponto
arp[9].y
13
Arrays de Estruturas
Robinho
*
jogador
struct jogador {
char *nome;
int idade;
};
21
arp[0].nome
arp[0].idade
Ronaldinho
arp[1].nome
23
arp[1].idade
jogador
...
arp[10].nome
jogador
arp[10].idade
14
/* ponteiro 4 bytes */
/* 2 bytes */
/* array 8 bytes */
structaluno al
*
21
Assis
00/0000
15
Funo sizeof(tipo)
A funo sizeof(tipo) retorna o tamanho em bytes
sizeof(int)
=> 4 bytes
sizeof(char)
=> 1 byte
sizeof(struct ponto) => 8 bytes
sizeof(struct ponto *) => 4 bytes
16
Exerccio Prtico
17
Exerccio Prtico