String Stream

double str_to_double(string s){

istringstream is(s);

double d;

is>>d;

if (!is) error("double format error:",s);

return d;

}

 

double d1=str_to_double("12.4");

//-------------------------------------------------

void my_code(string label, Temperature temp){

ostringstream os;

os<<setw(8)<<label<<":"<<fixed<<setprecision(5)<<temp.temp<<temp.unit;

someObject.display(Point(100,100),os.str().c_str());

//-------------------------------------------------

int seq_no = get_next_number();

ostringstream name;

name<<"myfile"<<seq_no;

ofstream logfile(name.str().c_str());

 

数字的话用非数字分割,字符串的话用空格分割,那么 Dennis Ritchie怎么获得啊?

String name;

cin>>name;  //Bad

-->

getline(cin,name);

cout<<name<<'/n';

 

string command;

getline(cin,command);

stringstream ss(command);

vector<string> words;

string s;

while(ss>>s) words.push_back(s);

 

//----------------------------------

char ch;

while(cin.get(ch)){

if (isspace(ch)){ //do nothing}

if (isdigit(ch)){ //read a number}

else if (isalpha(ch)){ //read an identifier}

else { //deal with operators}

}

你可能感兴趣的:(String Stream)