char str4[20]="asd|qwe|jklZ|gfd";
string str5[5];//c++
string *p=str5;
//cout<<&str5<<endl;
//cout<<p<<endl;
str5[0]=strtok(str4,"|");
for(int i=1;i<4;i++)
str5[i]=strtok(NULL,"|");
cout<<str5[0]<<" "+str5[1]<<" "+str5[2]<<" "+str5[3]<<endl;
cout<<*p<<" "+*p++<<" "+*p++<<" "+*p++<<endl;
输出时结果是 相反的 ,原因是cout函数的结合方向是从右到左,先运算了++
不知道对不对?