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

Funções ...


FibraOptica

Pergunta

Peguei para ler um tutorial e lá falava das funções de parâmetros variável, e queria saber como posso processar o código seguinte:

int soma(int x, int y, ...);

int main()
{

printf("A soma é: %d",soma(1,2,3,4,5,6,7,8,9,10));

return 0;
}

/* Chegou aqui, as coisas já apertam */

int soma(int x, int y, ...)
{

/* não consegui fazer o corpo da função */

}

A única coisa que eu queria é somar os numeros de 1 a 10 usando a função

soma(), visto que os argumentos dela é variável!

Exemplo de função de parâmetros variável: printf() ;

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Veja se isso aqui ajuda:

#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>

int soma(int x, int y, ...);

int main()
{

printf("A soma é: %d\n", soma(1,2,3,4,5,6,7,8,9,10));
system("pause");
return 0;
}

int soma(int x, int y, ...)
{
    int i;
    va_list argumentos;
    va_start(argumentos, x);
    int ret = x+y;
    
    while((i = va_arg(argumentos, int)) != NULL)
      ret += i;

    va_end(argumentos);
    return ret;
}

Certo? wink.gif

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Não tenho conhecimento do tipo de dados: va_list e da função va_start. Resumindo, nunca ouvi falar da biblioteca <stdarg.h>

Mas, é dela que você vai precisar para utilizar funções com número variável de argumentos. E, pelo exemplo, creio que você tenha notado que a utilização é simples.

Abraços,

Graymalkin

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,4k
×
×
  • Criar Novo...