C++ C++;:使用cin.getline()
现在我知道了C++ C++;:使用cin.getline(),c++,arrays,string,cin,C++,Arrays,String,Cin,现在我知道了cin.getline是这样工作的 cin.getline(dest字符串,放入字符串的字符数) 所以假设这个程序 char s1[8]="Hellopo"; cin.getline(s1,5); cout<<s1<<endl; chars1[8]=“Hellopo”; cin.getline(s1,5); cout第五个字符是0-终止符getline(buffer,n)最多可存储n字节,包括缓冲区中的0-终止符。然后cout第五个字符是0-终止符getli
cin.getline
是这样工作的
cin.getline(dest字符串,放入字符串的字符数)代码>
所以假设这个程序
char s1[8]="Hellopo";
cin.getline(s1,5);
cout<<s1<<endl;
chars1[8]=“Hellopo”;
cin.getline(s1,5);
cout第五个字符是0-终止符getline(buffer,n)
最多可存储n
字节,包括缓冲区中的0-终止符。然后cout第五个字符是0-终止符getline(buffer,n)
最多可存储n
字节,包括缓冲区中的0-终止符。然后cout第五个字符是空终止符,它标志着字符串的结束。第五个字符是空终止符,它标志着字符串的结束。在这种情况下将存储四个字符和一个空终止符(总共五个字符)。而std::cout
将在找到的第一个空终止符处停止打印。将存储四个字符加上一个空终止符(总共五个字符)。而std::cout
将在找到的第一个空终止符处停止打印。来自:
已提取计数-1个字符(在这种情况下,执行setstate(故障位))
这意味着如果指定5
,则只读取4
个字符。以及:
…然后将空字符表()存储到数组的下一个连续位置
因此,将在第四个字符后插入一个空字符。因此数组s
将包含以下内容:
'h' == s[0]
'h' == s[1]
'h' == s[2]
'h' == s[3]
0 == s[4]
操作符来自:
已提取计数-1个字符(在这种情况下,执行setstate(故障位))
这意味着如果指定5
,则只读取4
个字符。以及:
…然后将空字符表()存储到数组的下一个连续位置
因此,将在第四个字符后插入一个空字符。因此数组s
将包含以下内容:
'h' == s[0]
'h' == s[1]
'h' == s[2]
'h' == s[3]
0 == s[4]
运算符不能使用成员-getline
s。将免费的std::getline
与std::string
一起使用。在第2部分中,“s1的其余部分”是什么意思?在s1中输入的内容就是全部内容。实际上,没有,字符串的其余部分就是。不要使用member-getline
s。将免费的std::getline
与std::string
一起使用。在第2部分中,“s1的其余部分”是什么意思?不管输入cin放在s1中的是什么,都是存在的。实际上没有,字符串的其余部分就在那里