char*args[80];string history[10][10];
.......
i=0;
while(history[counter-1][i]!="")
{strcpy(args[i],history[counter-1][i].c_str());i++;}
cout<<args[0]<<endl;
当args[1]完成赋值后,打印args[0]值发现其也包含了args[1]的内容,这是为什么,我是在ubuntu上运行的。
char*args[80];string history[10][10];
.......
i=0;
while(history[counter-1][i]!="")
{strcpy(args[i],history[counter-1][i].c_str());i++;}
cout<<args[0]<<endl;
当args[1]完成赋值后,打印args[0]值发现其也包含了args[1]的内容,这是为什么,我是在ubuntu上运行的。
首先你看看arg申请的内存是不是足够放的下history,如果arg【0】最后一位不是'\0',会认为字符串没有结束,就会一直打印下去