我想知道 C++ 中字符数组和字符串的区别。
有人能回答这个吗??请,
谢谢毗湿奴库玛
string
是一个类/对象,具有方法和封装的数据。
char 数组只是一个用于保存字符的连续内存块。
(1)char
数组只是一个char
类型数据块:
例如char c[100];
// 100 个连续字节被分配给c
(2a)string
如果你char
的意思是字符串,那么它与数组有点相似,但它分配在内存的只读段中,应该分配给const char*
:
例如const char *p = "hello";
//“hello”驻留在连续字符缓冲区中
[注:char c[] = "hello";
属于(1)类,不属于(2a)类]
(2b)string
如果你是这样std::string
的话,它是来自标头的标准库类,你可能想参考它的文档或在网上搜索