Saturday, October 29, 2011

String concatenation in C++

#include <iostream>
#include <cstdarg>
#include <cstdio>

using namespace std;

char* concat(char* des, ...);

int main(){
  char str[100]="Fardad";
  cout << concat(str, " Soleimanloo","test\n", "more", " and more", 0) 
       << endl;
  return 0;
}

char* concat(char* des, ...){
 va_list args;
 va_start(args, des);
 char* get = va_arg(args, char*);

 while(get && sprintf(des,"%s%s",des,get) && (get=va_arg(args,char*)));

 va_end(args);
 return des;
}