c++primer习题4.35/4.34
#include <iostream> #include <string> #include <vector> using namespace std; int main() { vector<string>s; s.push_back("0123"); s.push_back("2345"); s.push_back("4566"); s.push_back("675"); s.push_back("894444"); vector<string>::iterator it = s.begin(); char **p = new char *[s.size()+1]; for(int i = 0; i < s.size(); i++) { char *q = new char[(*it).size()+1]; strcpy(q,(*it).c_str()); //cosnt char * p[i] = new char[(*it).size()+1]; //strcpy(p[i], q); p[i] = q; it++; } for(int i = 0; i < s.size(); i++) cout << p[i] << endl; for(int i = 0; i < s.size(); i++) delete []p[i];
delete []p;
}
Keep it simple!