cplusplus中字符数组与字符串的区别

difference between char array and string in cplusplus

本文关键字:字符串 区别 数组 字符 cplusplus      更新时间:2023-10-16

我想知道c++中字符数组和字符串的区别。

有谁能回答这个问题吗?请,

谢谢Vishnukumar

string是一个类/对象,具有方法和封装的数据。

字符数组就是用来存放字符的连续内存块。

(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那么,它是一个标准的库类从头,你可能要参考它的文档或搜索在web