c++简单问题。'\0' 与"\0"的区别。

来源:百度知道 编辑:UC知道 时间:2024/09/26 14:22:57
谢谢大家的回答,
在类中,
class String
private:
char *_string;
int _length;

默认构造函数中,string 应该怎样设置好点呢?为什么?
String::String()
{
_length=1;
_string=new char[_length];
_string ="\0";// 还是 _string ='\0';?
}

另外,为什么
#include<iostream>
#include<string>
using namespace std;

void main()
{
cout<<"#"<<'\0'<<"#"<<endl;
cout<<"#"<<"\0"<<"#"<<endl;

}
这个输出的格式不一样呢?

'\0' 是字符类型: char
"\0" 是字符串类型: char*

"\0"='\0'+'\0'
这是因为字符串的后面,编译器会自动补上一个\0

建议,你用vc写个输出语句分别输出一下,这样便能迎刃而解。