Função para concatenar texto ilimitada
Publicado por eu 08/05/2008
[ Hits: 7.324 ]
Esta função concatena um número ilimitado de strings; a sequência de strings deve ser terminada por NULL.
Depende da stdlib.h por causa do malloc. No arquivo tem um main com um exemplo de como usá-la.
#include <stdio.h> #include <stdlib.h> char *conc(int i, ...) { int *p=&i; char *texto,*pre; int n=0,n2,k,j; for(j=0;p[j]!=0;j++) { pre= (char *) p[j]; for(k=0;pre[k]!='{FONTE}';k++); n+=k; } texto=malloc((n+1)*sizeof(char)); n=0; for(j=0;p[j]!=0;j++) { pre= (char *) p[j]; for(k=0;pre[k]!='{FONTE}';k++) texto[n+k]=pre[k]; n+=k; } texto[n]='{FONTE}'; return texto; } int main () { char texto1[80]="f"; char texto2[80]="/tmp/lte/13 Three Minute Warning [Continued].mp3"; char *texto; texto=conc((int)"fbsetbg -",texto1," \"",texto2,"\"",0); printf("%s\n",texto); free(texto); }
Entrar com um número e imprimir todos os seus divisores
Busca do código do produto-Vetores----
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Linux x Plataformas de Trading - um problema (in-)solúvel? (1)
Ubuntu 25.10 - Erro ao iniciar o Omnissa Horizon (1)