c++ - char * 和 string 的区别

标签 c++ string char

我想知道char *string 之间的区别。 例如在这段代码中:

char *a;
string b;

谁能帮帮我?

最佳答案

假设您指的是 std::stringstring 是一个模拟字符串的标准库类。

char* 只是指向单个字符的指针。在 C 和 C++ 中,存在各种将指向单个字符的指针作为参数的函数,并将沿着内存跟踪直到达到 0 内存值(通常称为 null 终止符)。以这种方式,它模拟了一串字符; strlen 是执行此操作的函数示例(来自 C 标准库)。

如果您有选择,请使用 std::string,因为您不必担心内存问题。

关于c++ - char * 和 string 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17169760/

相关文章:

C++ 垃圾回收

java - 比较字符串时出现问题

java - 调试为字符串设置的 "Watch",charAt(0) 的值很奇怪

c++ - std::getline() 返回

c++ - 在 C++ 中是否有合法的方法来定义零大小的类型? <eom>

c++ - Pismo File Mount 如何将 ZIP 文件挂载到 Windows 资源管理器中?

javascript - JavaScript 最长重复子串

ios - 如何通过标题的第一个字母创建字典但忽略 "the"或 "a/an"等文章

objective-c - Objective-C 中字符串到 UTF8 字符的转换

javascript - 换行符在 Mac 上表示为 "\r"?