首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

C++中"\0"跟'\0'的区别

2013-10-16 
C++中\0和'\0'的区别今天发现了一件奇怪的事,\0表示什么都没有,而\0却表示一个空格,也许

C++中"\0"和'\0'的区别
今天发现了一件奇怪的事,"\0"表示什么都没有,而'\0'却表示一个空格,也许是输出格式的问题吧
看看这个程序:

#include <iostream>
#include <string>

int main()
{
using std::cout;
using std::endl;
using std::string;

string s;
cout << "i" << s[0] << "i" << "i" << endl;
        cout << "i" << s << "i" << "i" << endl;
return 0;
}

两种输出的结果居然不一样,请问这是怎么回事
c++ string
[解决办法]
你这个问题可以简化为2行

        cout << "i"  << '\0' << "i" << endl;
        cout << "i"  << "" << "i" << endl;

cout << 字符
cout << 字符串
这俩最终调用的是不同的函数,字符总是会输出,\0输出为NULL,不可见字符,你看到的就是空格,而字符串则是碰到\0结束输出。

热点排行