Ir para conteúdo
Fórum Script Brasil

victor93

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que victor93 postou

  1. Olá a todos!! Galera, tenho uma dúvida conceitual, primeiro peço que leiam meu código ( é pequeno e serve apenas para explicitar minhas dúvidas): #include <stdio.h> int main() { char *p1, vet[]="Coruja"; int *p2, x=6; p1 = vet; // ou p1=&vet[0],tanto faz printf("endereco do ponteiro p1: %x\nendereco da variavel apontada por p1: %x\ncontudo armazenado em p1: %s\n\n\n",p1, &p1, p1); p2 = &x; printf("endereco do ponteiro p2: %x\nendereco da variavel apontada por p2: %x\nvalor armazenado em p2:%d", p2, &p2, *p2); return 0; }DÚVIDAS: Por que quando printamos o conteúdo referente a um ponteiro do tipo char, não podemos passar o *p1 como argumento para indicar esse conteúdo? Por exemplo, quando queremos printar o conteúdo apontado por um ponteiro do tipo int, passamos o *p2 como um argumento.Caso eu o fizesse num ponteiro do tipo char, o programa não rodaria.Outra dúvida, o conteúdo armazenado peloponteiro do tipo char p1 e o conteúdo apontado por ele foram passados por mim no printf como o mesmo argumento ( ambos p1),mas um printou o endereço( passei como %x ) e o outro o conteúdo da string (passei como %s). Como pode isso?! É um conteúdo ou um endereço afinal?? Parece que quanto mais tento estudar ponteiros, mais confuso eu fico...broxante!! Desde já grato.
×
×
  • Criar Novo...