Funções com número variável de argumentos
Publicado por Perfil removido 23/11/2004
[ Hits: 7.626 ]
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.
#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);
}
Manipulação de um vetor de registros
3º EP - Poli USP - Angry Birds (angry bixos)
[C] Listas Duplamente Encadeadas
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? (12)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









