Professional Documents
Culture Documents
Introduo
A linguagem C permite que se crie cinco tipos diferentes
de dados personalizados:
www.professorferlin.blogspot.com 1
Estruturas
by Prof. Edson Pedro Ferlin
Struct
struct addr {
char nome[30];
char rua[40];
Matrizes de estrutura
char cidade[20];
char estado [3]; struct addr end_m[100];
unsigned long int cep;
}; end_info[2].cep = 85000;
end_info.cep=80000;
Estruturas
by Prof. Edson Pedro Ferlin
struct test {
char x;
int y;
float z;
char s[10];
} teste1;
www.professorferlin.blogspot.com 2
Estruturas
by Prof. Edson Pedro Ferlin
main()
{
struct { struct estru_d{
int a, b; int a, b;
char ch;
char ch;
};
} argu;
main()
argu.a=1000; {
f1 (argu); struct estru_d argu;
} argu.a=1000;
f1(parm) f1 (argu);
struct { }
int x, y; f1(parm)
char ch; struct estru_d param;
} parm; {
{ prinf(%d, parm.a);
prinf(%d, parm.x); }
}
5
Estruturas
by Prof. Edson Pedro Ferlin
www.professorferlin.blogspot.com 3
Enumeraes
by Prof. Edson Pedro Ferlin
Enum
um conjunto de constantes inteiras com nome e especifica
todos os valores legais que uma varivel daquele tipo pode
ter;
dinheiro = dime;
Campo de Bit
by Prof. Edson Pedro Ferlin
struct device {
um tipo especial que unsigned active: 1;
define o comprimento em unsigned ready: 1;
bits de cada elemento; unsigned error: 1;
} dev_code;
Informaes codificadas;
Restries:
Acesso de bits dentro de
um byte; No se pode pegar o endereo de
uma varivel de campo de bit;
No se pode colocar em matrizes;
Eficincia; No se pode ultrapassar os limites de
inteiros.
Programa mais porttil.
www.professorferlin.blogspot.com 4
Unies
by Prof. Edson Pedro Ferlin
Union
cntv.i = 10;
So usadas quando as
converses de tipo so func1(un)
necessrias. union u_type *un;
{
un ->i = 10;
}
Typedef
by Prof. Edson Pedro Ferlin
balanco extrato_conta;
10
www.professorferlin.blogspot.com 5