Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
/*4) Faça um programa em C que execute os seguintes passos: - mostre o tamanho de uma variável do tipo int; - mostre o tamanho de uma variável do tipo double; - mostre o tamanho de uma variável do tipo char; - defina 3 ponteiros, um para cada variável acima; - mostre na tela o valor do endereço de cada variável criada anteriormente (ou seja, o conteúdo do ponteiro para cada variável); - some o valor 1 aos ponteiros criados; - mostre o novo conteúdo dos ponteiros. Pergunta: todos os valores foram apenas acrescidos de 1? Senão, o que aconteceu? Obs:- para obter o tamanho de uma variável: sizeof(tipo) ou sizeof(variável) - para mostrar o conteúdo de um ponteiro (endereço de memória) utilizando o printf: %p, ou %ld, convertendo antes para long - como converter dados: utilizar o recurso chamado de “cast”: (tipo)*/ #include <stdio.h> #include <stdlib.h> int main(void){ int x1=10; double x2=12.34; char x3='m'; int *pont1; double *pont2; char *pont3; printf("\n um numero inteiro(int) precisa de %d posicoes de memoria para ser armazenado\n",sizeof(int)); //%p ou %1d printf("um numero real duplo(double) precisa de %d posicoes de memoria para ser armazenado\n",sizeof(double)); printf("um caracter(char) precisa de %d posicoes de memoria para ser armazenado\n\n",sizeof(char)); pont1=&x1; pont2=&x2; pont3=&x3; printf("o endereco da variavel x1(inteiro) e: %ld\n", (long int)pont1); printf("o endereco da variavel x2 (double) e: %ld\n", (long int)pont2); printf("o endereco da variavel x3 (char) e: %ld\n\n", (long int)pont3); pont1++; pont2++; pont3++; printf("o novo endereco armazenado em pont1(inteiro) e %ld\n",(long int)pont1); //%p ou %1d printf("o novo endereco armazenado em pont2(double) e %ld\n",(long int)pont2); printf("o novo endereco armazenado em pont3(char) e %ld\n\n",(long int)pont3); system("pause"); return 0; }
Compartilhar