动态拼接字符串
? ???強(qiáng)烈推薦人工智能學(xué)習(xí)網(wǎng)站?? ? ?
? 工作中有時候需要傳入不定個數(shù)的字符串,就需要專門寫一個函數(shù)動態(tài)添加字符串,下面看下函數(shù):
#include <iostream> #include <cstring> #include "stdarg.h"std::string append(int count,const char* msg, ...){std::string srcStr;va_list vaList;va_start(vaList, msg);char tmp[1024] = {0};int n = 0;int true_count = count -1;strcat(tmp,msg);while(1){strcat(tmp,"_");strcat(tmp,va_arg(vaList,char*));n++;if(n == true_count){printf("%d\n",n);break;}}va_end(vaList);//結(jié)束可變參數(shù)列表std::string stmp(tmp);srcStr += stmp;return srcStr; }int main(){//stringstd::string str1 = "12";std::string str2 = "34";std::string str3 = "56";std::string src = append(3,str1.c_str(),str2.c_str(),str3.c_str());std::cout << src << std::endl;return 0; }經(jīng)測試好用。
總結(jié)
- 上一篇: 数组最大最小值比较次数优化
- 下一篇: 算法--三数之和