计算字符串的长度:strlen 、sizeof的不同

来源:互联网 发布:u盘数据恢复不了 编辑:程序博客网 时间:2024/05/16 14:14

      在C语言中,字符型为char,字符数组定义为:char  数组名 ={ 值1,值2...},或者为 char 数组名 = “ ”。而要计算字符数组,也就是字符串的长度,有两中方法:strlen和sizeof。

      strlen()是字符串处理函数,用来计算字符串的长度,即:字符串中实际字符的长度。如下

        char array[10] = "iphone";

        printf("%lu\n",strlen(array));

           最终输出结果为6。刚好是实际写入字符的个数。


      而sizeof是操作符,使用来计算所建立的对象的字节长度。如果提前规定了数组的长度,那么结果就是规定的长度;如果没有规定,计算的长度为实际写入的字符 + 1:\0。

      例子:

                规定字符数组的长度为10:

        char array[10] = "iphone";

         printf("%lu\n",sizeof(array));

          控制台输出的结果为10。


                 不规定长度:

        char array[] ="iphone";

        printf("%lu\n",sizeof(array));

           此时在控制台输出的值为7:实际字符 + ‘\0’
             

     


     


       
        

        

            
        





1 0
原创粉丝点击