recently, i'm confused of how to read a string
firstly, i try to define a string variable, and struggle to gain it from istream, like below:
string str;
cin>>str; //but it turns out there is not an operator like ">>" to string;
scanf("%s",&str); // to function "scanf", if seting "%s" as controler, the variable must be with argument of "char *";
//gets_s() is improper,too;
secondly, waitting to be added;
finally, I think of a new way, maybe it's writen by someone else, I want to show it as below:
string str;
char ch;
while(ch=getchar())
{
if(ch=='\n')
break;
str+=ch;
}
after all these have been done, we can easily get string with freewill length! bingo!!
last but not least, if we want to output one string with cout, a format is needed, "cout<<str.c_str()<<endl;";