1 #include<iostream> 2 //用于字符串的输入输出 3 #include<sstream> 4 #include<cstdlib> 5 #include<string> 6 //用于输出到字符串 7 #include<strstream> 8 using namespace std; 9 10 void main1() 11 { 12 //创建字符串流(sprintf) 13 stringstream mystr; 14 //输出 15 mystr.put('X').put('Y'); 16 //相当于汇总一个字符串(sprintf) 17 mystr << "1234" << 12.89 << 4; 18 cout << mystr.str() << endl; 19 20 //类似以下也可以调用 21 //mystr.put 22 //mystr.write 23 24 cin.get(); 25 } 26 27 //创建结构体,从字符串中截取字符 28 struct info 29 { 30 string str1; 31 string str2; 32 string str3; 33 int num; 34 char ch; 35 double db; 36 37 }; 38 39 void main2() 40 { 41 //从字符串中获取数据,相当于sscanf,把数据截取到结构体中 42 string str1("google microsoft apple 100 A 10.9"); 43 //创建结构体 44 info inf; 45 //建立输入流(sscanf) 46 istringstream iput(str1); 47 //从输入流获取数据到结构体中 48 iput >> inf.str1 >> inf.str2 >> inf.str3 >> inf.num >> inf.ch >> inf.db; 49 //输出结构体信息 50 cout << inf.str1 << " " << inf.str2 << " " << inf.str3 << " " << inf.num << " " << inf.ch << " " << inf.db; 51 52 //类似以下也可以调用 53 //iput.gcount 54 //iput.getline(); 55 56 57 cin.get(); 58 } 59 60 61 void main123213() 62 { 63 //切割数据 64 char p[100] = "google ,microsoft , apple ,100 , A , 10.9"; 65 for (char *px = p; *px != '