C语言sizeof()和strlen()详细区别和应用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zzw3255/article/details/80664723

一. 区别

strlen() 是一个函数,求字符串的长度,它的长度不包括‘\0’;

sizeof() 是一个操作符,求数据类型(实体)的大小;

这是简单定义区别,四不四傻傻的分不清,下面我们来搞下应用一探究竟。

二. 应用

1. 求数组长度

(1)int array[10] = { 1, 2, 3, 4, 0 };

strlen((char *)array) = 4;
sizeof(array) = 10;

(2)int array[10] = { 0, 1, 2, 3, 4};

strlen((char *)array) = 0;
sizeof(array) = 10;

(3)int array[10] = { 1, 2, 0, 3, 4 };

strlen((char *)array) = 2;
sizeof(array) = 10;

2. 求字符串长度

(1)char *array = "01234";

strlen((char *)array) = 5;
sizeof(array) = 5;

(2)char *array = "12340";

strlen((char *)array) = 5;
sizeof(array) = 5;
以上实例仅供参考,环境是VS2015。如有误之处,恳请广大朋友指正,谢谢!

猜你喜欢

转载自blog.csdn.net/zzw3255/article/details/80664723