sizeof nome_da_variável
sizeof (nome_do_tipo)
Se quisermos então saber o tamanho de um float fazemos
sizeof(float). Se declararmos a variável f como float
e quisermos saber o seu tamanho faremos sizeof f. O operador sizeof
também funciona com estruturas, campos bit, uniões e enumerações.
Outra aplicação importante do operador sizeof é
para se saber o tamanho de tipos definidos pelo usuário. Seria,
por exemplo, uma tarefa um tanto complicada a de alocar a memória
para um ponteiro para a estrutura ficha_pessoal, criada na primeira
página desta aula, se não fosse o uso de sizeof.
Veja o exemplo:
#include <stdio.h>
struct tipo_endereco
{
char rua [50];
int numero;
char bairro [20];
char cidade [30];
char sigla_estado [3];
long int CEP;
};
struct ficha_pessoal
{
char nome [50];
long int telefone;
struct tipo_endereco
endereco;
};
void main(void)
{
struct ficha_pessoal *ex;
ex = (struct ficha_pessoal *) malloc(sizeof(struct ficha_pessoal));
...
free(ex);
}