c++中char str[]与char* str的区别
在c++中对char类型做了特殊处理,原因是兼容c语言
eg:
char str[]="abcdef";
这里的str是一个地址,c++在运行时会自动将str的地址从str[0]一直移动到“”;然后输出结果。\abdchar* str这个是一个野指针,千万别这样使用,在类中除外。
小练习 #include <iostream>
using namespace std;class Book{
private:
char* str;
public:
Book(char str[]);
void show();
};
Book::Book(char str[]){
this->str=str;
};
void Book::show(){
cout<<this->str<<endl;
}int main(){
Book b("abcdef");
b->show();
}最后一行写错了,应当是b.show();
补充:软件开发 , C++ ,