关于strlen和sizeof的区别
2016-06-07 14:48 小竹心语 阅读(225) 评论(0) 编辑 收藏 举报1 #include <stdio.h> 2 #include <string.h> 3 //int argc , char *argv[] 4 int main() 5 { 6 char arr[5]="asdf"; 7 8 int i=0; 9 i = strlen(arr); 10 printf("i=%d\n",i);//输出4 11 i = sizeof(arr); 12 printf("i=%d\n",i);//输出5 13 14 15 return 0; 16 }
从上面可以看出来上突然冷求字符串长度不包括\0 sizeof则包括
#include <stdio.h> #include <string.h> //int argc , char *argv[] int main() { char arr[10]="asdf"; int i=0; i = strlen(arr); printf("i=%d\n",i);//输出4 i = sizeof(arr); printf("i=%d\n",i);//输出10 return 0; }
从上面可以看出,sizeof不管字符串的结束符,求得是数组定义好的长度