【发布时间】:2012-11-14 09:04:55
【问题描述】:
bool check(const char* pass);
const 是否意味着我不能在函数内部修改 char*?
char* c 是否有类似 contains(char c) 之类的函数来检查 char 是否在 char* 中?
如何获取 char* 中的第 4 个字符?
是否有任何函数可以给出该 char* 的长度。除了检查'\0'在哪里?
【问题讨论】:
-
Const 保护他的左侧,除非他的左侧没有任何东西,然后才保护他的右侧
-
A
char*不“包含”字符。它“内部”没有字符串,也没有长度。它指向一个字符,该字符可能是也可能不是以 nul 结尾的字符串的第一个字符。以 nul 结尾的字符串包含字符并具有长度。 -
回答 4 是一个大胖子 NO。这是您应该使用
std:string而不是char*的众多原因之一。您可以继续让自己的生活变得困难,也可以听取经验丰富的程序员的建议。如果您在使用std::string时遇到问题,请询问如何正确使用它,最终还是值得的。