【发布时间】:2021-04-05 12:42:10
【问题描述】:
你能解释一下为什么下面程序的输出是 1 吗?
const char *str = "mms";
printf("%d\n", strlen(str + 2));
return 0;
如果我加 1,结果是 2。
【问题讨论】:
-
你学过指针运算吗?这似乎应该成为每个体面的 C 课程/教程的一部分
-
请注意,
strlen(str + 2)与strlen(str) + 2不同。也许这就是你困惑的根源?