Função para concatenar texto ilimitada
Publicado por eu 08/05/2008
[ Hits: 7.505 ]
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);
}
Retirar ocorrências de uma substring dentro de uma string
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Maquina modesta - a vez dos navegadores ferrarem o usuario
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor









