cout输出字符串是不是遇 '\0' 就停止输出?
大牛们帮忙看看这代码:
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s; //char s[255];
cin>>s;
s[4]='\0';
cout<<s<<endl;
system("pause");
return 0;
}
输入:asdfghjk
输出:asdf hjk
把string s;换成 char s[255];的话,就只输出前四个字符 asdf
求大牛解释怎么回事?
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s; //char s[255];
cin>>s;
s[4]='\0';
cout<<s<<endl;
system("pause");
return 0;
}
输入:asdfghjk
输出:asdf hjk
把string s;换成 char s[255];的话,就只输出前四个字符 asdf
求大牛解释怎么回事?
...全文
相关推荐
c++中cin/cout与scanf/printf的区别比较
gets()函数是scanf的一个变种,可以从标准输入设备读取字符串直到换行符结束,但换行符会被丢弃,然后在末尾添加'\0'字符。
输入‘\n’停止输入字符 和 输出‘\n’或‘\0’停止输出
//从终端键盘向计算机输入时,是在按Enter键以后才将一批数据一起送到内存缓冲 //区中去的 #include #include int main() { char c[100]; int i; /* for( ; (c=getchar())!='\n'; ) printf("%c", c);
C++字符数组的输入输出和字符串结束标志使用讲解
`std::cout << str;`则会输出字符串,直到遇到字符串结束标志`'\0'`。关于字符数组的输入输出需要注意以下几点:- 输出的字符不包括结束符`'\0'`。
C++读取带空格字符串的方法
使用 cin>> 读取字符串使用 cin>> 读取字符串是C++中最常用的输入语句,但是它有一个缺陷,就是不能读取带空格的字符串。当遇到空格或者回车键时,输入就会停止。
C++中带空格字符串的输入问题解决
= '\0') { cout << a[i]; } } return 0;}```总结来说,C++中处理带空格字符串的关键在于选择正确的输入函数。


