首页 > 代码库 > strlen() 函数

strlen() 函数

strlen() 函数通常用来计算字符串的长度,但是今天突然发现个奇怪的现象。

如下所示:

#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){    char *str;    int n = 0;    str = (char *)malloc(30 * sizeof(char));    printf("%d\n", strlen(str));    printf("%d\n", sizeof(str));    return 0;}

 

 strlen(str) = 34 ?????? 为什么呢? strlen(str) = sizeof(str) + 30 ??? 是吗??

strlen() 函数