====== Operador sizeof ====== Existe um operador em C que indica o tamanho em bytes que uma determinada variável está utilizando na memória. Pode-se também colocar um determinado tipo como parâmetro que o resultado será o mesmo. Este operador é muito utilizado quando se faz alocações dinâmicas de memória ou movimentações diretas na memória. Observações: * Nas especificações atuais da linguagem C, o [[tipos_dados|long]] e o [[tipos_dados|int]] tem o mesmo tamanho e o modificador [[tipos_dados|long]] não altera o tamanhos do [[tipos_dados|float]]. * Uma variável não precisa ter o seu conteúdo especificado para se obter o seu tamanho. * O operador pode ser utilizado direto com o [[tipos_dados|tipo da variável]]. Veja o exemplo: #include int main (void) { int a; short int b; long int c; unsigned int d; unsigned short int e; unsigned long int f; float g; double h; long double i; char j; printf("Tamanho do a : %d\n", sizeof(a)); printf("Tamanho do b : %d\n", sizeof(b)); printf("Tamanho do c : %d\n", sizeof(c)); printf("Tamanho do d : %d\n", sizeof(d)); printf("Tamanho do e : %d\n", sizeof(e)); printf("Tamanho do f : %d\n", sizeof(f)); printf("Tamanho do g : %d\n", sizeof(g)); printf("Tamanho do h : %d\n", sizeof(h)); printf("Tamanho do i : %d\n", sizeof(i)); printf("Tamanho do j : %d\n", sizeof(j)); printf("Tamanho do int : %d\n", sizeof(int)); printf("Tamanho do short int : %d\n", sizeof(short int)); printf("Tamanho do long int : %d\n", sizeof(long int)); printf("Tamanho do unsigned int : %d\n", sizeof(unsigned int)); printf("Tamanho do unsigned short int : %d\n", sizeof(unsigned short int)); printf("Tamanho do unsigned long int : %d\n", sizeof(unsigned long int)); printf("Tamanho do float : %d\n", sizeof(float)); printf("Tamanho do double : %d\n", sizeof(double)); printf("Tamanho do long double : %d\n", sizeof(long double)); printf("Tamanho do char : %d\n", sizeof(char)); return 0; } --- //[[marcos@laureano.eti.br|Marcos Laureano]] 2008/04/25 10:23//