#include <stdio.h>
int main(int argc, char *argv[]) {
char s[]="help";
printf("%d",strlen(s));
}
为什么上面的输出是4,5不是正确答案吗?
内存中应为‘h’、‘e’、‘l’、‘p’、‘\0’.
谢谢
#include <stdio.h>
int main(int argc, char *argv[]) {
char s[]="help";
printf("%d",strlen(s));
}
为什么上面的输出是4,5不是正确答案吗?
内存中应为‘h’、‘e’、‘l’、‘p’、‘\0’.
谢谢
strlen
:返回给定字节字符串的长度,不包括空终止符;
char s[]="help";
strlen(s) should return 4.
sizeof
:返回给定字节字符串的长度,包括空终止符;
char s[]="help";
sizeof(s) should return 5.