Função para concatenar texto ilimitada
Publicado por eu 08/05/2008
[ Hits: 7.483 ]
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);
}
Divisores de um inteiro positivo em C++
Programa para cálculo de números complexos
Instalação e Configuração do Void com Cinnamon
Porque Gentoo semi-binário atualmente (desabafo)
A combinação de WMs com compositores feitos por fora
Audacious, VLC e QMMP - que saudades do XMMS
SUNO OpenSource: Crie um servidor de gerador de música com IA
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
Guia de instalação do Gentoo Linux com Cinnamon (UEFI, LUKS2, Btrfs)
Da pra formatar um netbook MGB e usar algum linux nele? É possível usa... (2)
Alguns aplificativos em Flatpak não rodam no Debian [RESOLVIDO] (4)









