Funções com número variável de argumentos
Publicado por Perfil removido 23/11/2004
[ Hits: 7.618 ]
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);
}
Rotina para controle de portas paralelas em C.
Memória compartilhada, semáforo e criação de processos
Mudando Cor da Letra e Fundo de Tela
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
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Assinador JNLP do Site Portal da Nota Fiscal Eletrônica (1)
O programa assinador digital (3)
Warcraft II Remastered no Linux? (2)









