Encontre o erro em cada um dos segmentos de programa a seguir. Se o erro puder ser corrigido, explique como fazê-lo.
- Int *number;
- float *realPtr;
- int * x, y;
- char s[] = “este é um array de caracteres”;
- short *numPtr, result;
- float x = 19.34;
- char *s;
Printf( “%d\n”, *number);
long *integerPtr;
integerPtr = realPtr
x = y;
int count;
for ( ; *s != ‘\0’; s++)
printf( “%c “, *s );
void *genericPtr = numPtr;
result = *genericPtr + 7;
float xPtr = &x;
printf( “%f\n”, xPtr );
printf( “%s\n”, s );
Passo 1
E aí meus queridos!! Tudo bem com vocês??
Nessa questão vamos falar valar sobre erros que podemos encontrar ao declarar um ponteiro!
Na primeira questão, podemos ver a falta de uma variável com valores definidos para o ponteiro *number adquirir um endereço de memória. Há também a falta de inicialização do mesmo.
Vamos ver como podemos corrigir?

Podemos corrigi-los criando a variável número e inicializando-a com um valor, e definindo o ponteiro com o endereço da variável criada.
Passo 2
Essa aqui temos a tentativa de conversão de um ponteiro do tipo Float para um tipo Long.
Lembre-se: Ponteiro só podem ser convertidos e atribuído valores para si se forem do mesmo tipo.

Então se trocarmos o tipo long para float no ponteiro *integerPtr o nosso código funcionará bem certinho!!
Passo 3
Nessa questão temos a declaração do ponteiro x, o * que atribui a variável como ponteiro não está ligado a variável, tendo um espaço entre eles e ao atribuir o y ao ponteiro não existe o e-comercial (&).
Podemos corrigir assim:

Ao tirarmos o espaço do asterisco e do x e acrescentarmos o e-comercial & ao y na atribuição, nosso código poderá funcionar!
Passo 4
Nesse segmento não possui as chaves{} no loop do tipo for.
Então se colocarmos as chaves...

Assim o nosso código funciona perfeitamente!
Passo 5
Não é possível converter um ponteiro do tipo void em short na atribuição.
Então precisaremos trocar o tipo void para short no ponteiro *genericPtr.

Passo 6
Nessa questão faltou atribuir a variável xPtr como ponteiro já que a mesma aponta para outra variável. Se colocarmos o asterisco * antes da variável, podemos resolver o problema.
Veja como:

Passo 7
O ponteiro s está declarado com o tipo char (caractere), porém está sendo imprimido como string %s. Se trocarmos o %s (string) por %c (caractere), ficaria assim:

Ufa....terminamos por aqui!! Bora recarregar as energias e ir pra próxima!! ;-)
Resposta
Ei, a resposta está no passo a passo :)