如果用一句话来说,char* 是一个数据类型,而string则是一个类。
char * 是传统的基本串类型,带尾0的字符串,要一套专门的处理串的子程序;string 是面象对象的串对象,封装了许多函数,功能更强;这两个类型可以互相转换,但这是不同的类型,有的传统老式函数ifstream.open它的参数类型是char *,你就不能用string.
同样在屏幕上输入"abcdefg",Char和String的不同实现方式。
1.Char*实例:
#include《iostream》
using namespace std;
void main(void)
{
char *chara="abcdefg";
cout<<"char is: "<<chara<<endl;
}
2.String*实例:
#include《iostream》
#include《string》// 注意是,不是,带.h的是C语言中的头文件
using namespace std;
void main(void)
{
string str1="abcdefg";
cout<<"string is: "<<str1<<endl;
str1.~string();//销毁字符,释放内存
}