Funções com número variável de argumentos
Publicado por Perfil removido 23/11/2004
[ Hits: 7.730 ]
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);
}
Jogo da Velha com IA invencivel
Árvore de busca binária com frequência de consultas
Por que seu __DIR__ falhou ou o "inferno" dos caminhos no PHP
Preparando-se para certificações da LPI através do LPI Lab
Migração de Arch Linux para repositórios CachyOS (Uso de Instruções v3 e v4)
Ativando o modo Quake no XFCE4-Terminal
[Tutorial] Configurando Multimaster no Samba 4 AD (DC02) + Explicação de FSMO Roles
[Resolvido] Google Chrome reclamando de perfil em uso após mudar hostname
Instalando o Tema de Ícones Tela Circle
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Senhor Einstein tinha razão mesmo! (7)
Como instalar Warsaw no Gentoo? (1)
Da pra formatar um netbook MGB e usar algum linux nele? É possível usa... (4)









