Strlen和sizeof

一、

    1. strlen 是函数,sizeof 是运算符。

    2. strlen 测量的是字符的实际长度,以'\0' 结束。而sizeof 测量的是字符的分配大小。

    char str[20] = "hello";  

    strlen(str) = 5;  sizeof(str) = 20;  

二、

1个字节 char*(即指针变量): 4个字节, int: 4个字节 unsigned int : 4个字节 float: 4个字节 double: 8个字节

在子函数中,ziseof 会把从主函数中传进来的字符数组当作是指针来处理。指针的大小又是由机器来决定,而不是人为的来决定的。

#include   


void size_of(char str[])  

{  

printf("sizeof:%d\n", sizeof(str));  

}  

int main()  

{  

char str[20] = "hello";  

    size_of(str);  

return 0;  

}  

结果显示为sizeof:4

sizeof可以用类型做参数,strlen只能用char*做参数,且必须是以''\0''结尾的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 参考网址:http://blog.csdn.net/niushuai666/article/details/767...
    zhenjiechen阅读 1,548评论 0 0
  • 前言 最先接触编程的知识是在大学里面,大学里面学了一些基础的知识,c语言,java语言,单片机的汇编语言等;大学毕...
    oceanfive阅读 3,124评论 0 7
  • 史上最全的iOS面试题及答案 iOS面试小贴士———————————————回答好下面的足够了----------...
    Style_伟阅读 2,401评论 0 35
  • iOS面试小贴士 ———————————————回答好下面的足够了------------------------...
    不言不爱阅读 2,002评论 0 7
  • 以前的我 总是不屑于 一见钟情 直到那天 只需一眼 我便知 我已中了相思的毒 几多思索 几多反复 得此一文 你好啊...
    小寇同学阅读 224评论 3 3