Tag: string length

错误的字符串长度

我试图得到一个字符串的长度,但我得到错误的值,它说它只有4个字符长。 为什么是这样? 我正确使用sizeof()吗? #include int main(void) { char *s; int len; s = “hello world”; len = sizeof(s); printf(“%d\n”, len); }

在循环条件中使用strlen()比仅检查null字符更慢吗?

我已经读过使用strlen比这样的测试更昂贵: 我们有一个长x 100个字符的字符串。 我觉得 for (int i = 0; i < strlen(x); i++) 比这段代码贵: for (int i = 0; x[i] != ‘\0’; i++) 这是真的吗? 也许第二个代码在某些情况下不起作用,所以最好使用第一个代码吗? 下面会更好吗? for (char *tempptr = x; *tempptr != ‘\0’; tempptr++)