Ir para conteúdo
Fórum Script Brasil
  • 0

Dúvida em Ponteiros [Linguagem C]


Diego Abner

Pergunta

Considere a função de quadrado de dois ponteiros:

void exp(int *p){
    *p = (*p)*(*p);
}

E a função principal: 

void main (){
     int x;
     printf ("Informe um numero: ");
     scanf ("%d", &x);
     printf ("O quadrado de x é: ", exp(x));
}

Corrija este código para que se consiga elevar ao quadrado cada elemento de um vetor de 10 elementos.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

1º a função exp está esperando uma direção(ponteiro) você deve passar uma direção: exp(&x).
2º exp não retorna nada(void), não pode ser usada como parâmetro em printf, nesse caso você tem 2 opções.
-A primeira opção é você tirar essa função dos parâmetros do printf e colocar x no seu lugar, a função exp ficaria entre o scanf e o printf, ou seja antes de ser chamada em printf.
-A segunda opção seria você declarar a função como int e retornar *p.
3ºO compilador pode indicar que exp já existe e que da conflito com o tipo de retorno da exp original, mude o nome dessa função para outra coisa, expo, exp2, _exp, coxinha, mortadela ou o que te der vontade por exemplo. >_<

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...