Funções com número variável de argumentos
Publicado por Perfil removido 23/11/2004
[ Hits: 7.577 ]
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); }
Pilhas Encadeadas Detalhadamente
Arquivos utilizados no artigo: "Desenvolvendo um plugin para o XMMS"
Árvore de busca binária com frequência de consultas
AA linux kernel modificado por minhe
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Browser/Placa de vídeo trava Ubuntu 22.04 (1)
Salvar estado da VM no virt-manager [RESOLVIDO] (5)