Pular para o conteúdo

Funções com número variável de argumentos

Uma grande facilidade que a linguagem C oferece mas poucas pessoas conhecem (na verdade todas conhecem, mas poucas sabem como usar) são as funções com número variável de argumentos. A função printf é um exemplo. Para usar esta facilidade existem as funções do arquivo stdarg.h. No trecho de código a seguir mostro um exemplo do uso dessas funções. É simples, mas dá pra se ter uma idéia e adaptar para suas necessidades.
Perfil removido removido
Hits: 7.777 Categoria: C/C++ Subcategoria: Avançado
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Uma grande facilidade que a linguagem C oferece mas poucas pessoas conhecem (na verdade todas conhecem, mas poucas sabem como usar) são as funções com número variável de argumentos. A função printf é um exemplo. Para usar esta facilidade existem as funções do arquivo stdarg.h. No trecho de código a seguir mostro um exemplo do uso dessas funções. É simples, mas dá pra se ter uma idéia e adaptar para suas necessidades.
Download var_args.c Enviar nova versão

Esconder código-fonte

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

void
function(int n_args, ...)
{
    va_list args;

    va_start(args, n_args);

    int i = 4;
    while ( i-- )
 printf("%s\n", va_arg(args, char *));

    n_args -= 4;
    while ( n_args-- > 0 )
 printf("%d\n", va_arg(args, int));

    va_end(args);
}

main()
{
    function(9, "ola mundo", "hello world", "hola mundo", "bonjour monde", 11, 12, 10, 27, 14);
    function(3, "slackware", "linux", "10.0");
    function(8, "linux", "kernel", "final", "version", 2, 6, 8, 1);
}

Função strncat

Informação do sistema

Sudokou em C feito com matrizes e listas

Cálculo de logaritmo de um número por um terceiro método em C

Estrutura de dados: Lista dinâmica duplamente encadeada

#1 Comentário enviado por genioloco em 09/02/2006 - 21:02h
Muito legal esta ferramenta que todos tem à mão, mas poucos utilizam.

Contribuir com comentário

Entre na sua conta para comentar.