【发布时间】:2010-08-11 02:41:56
【问题描述】:
C 字符串和 C++ 字符串有什么区别。特别是在进行动态内存分配时
【问题讨论】:
-
你是指两种语言中使用
char*和char[]字符串的区别,还是基于char的字符串和std::string的区别? -
请定义“C 字符串”和“C++ 字符串”的含义。两者(尤其是后者)都是模棱两可的。
-
我想不出他们可能有的共同点。我得睡着了。
-
@Gollum,这可能是一个实现问题。我认为标准中没有任何内容可以说明 C++ 字符串不允许 以空值结尾。事实上,它可能会让
c_str更容易实现。 -
我认为它们通常是 nul 终止的,以便在调用 c_str() 时节省创建临时缓冲区