zoukankan      html  css  js  c++  java
  • strlen与sizeof的区别

    解析C/C++语言中的strlen与sizeof的区别

      1.从功能定义上,strlen函数,用来求字符串的长度,sizeof函数是用来求指定变量或变量类型等所占用内存的大小;

      2.sizeof是运算符,而strlen是C库函数strlen只能用char*做参数,且以'/0'结尾的;
      对于静态数组处理:
         char str[20]="0123456789";
         strlen(str)=10;   //表示数组中字符串的长度
         sizeof(str)=20;   //表示数组变量分配的长度
      对于指针处理:
         char *str="0123456789";
         strlen(str)=10;     //表示字符串的长度
         sizeof(str)=4;      //表示指针变量的所占内存大小
         sizeof(*str)=1;     //表示'0'这个字符变量的所占内存大小
     
    具体而言,当参数分别是如下时,sizeof返回的值表示的含义如下:
    数组----编译时分配的数组空间的大小;
    指针----存储该指针所用的空间的大小(存储该指针的地址的长度,是长整型,应该是4);
    类型----该类型所占的空间的大小;
    对象----对象的实际占用空间大小;
    函数----函数的返回类型所占的空间大小。函数的返回类型不能是void。
  • 相关阅读:
    对于JavaScript中this关键字的理解
    使用DOM对表格进行增删
    sql server 存储过程
    sql sever 基础 练习题
    sql sever 基础 建表
    第十章 嵌入式的Linux调试技术
    第九章 硬件抽象层 HAL
    第八章 蜂鸣器驱动
    LED:控制发光二极管
    第一个Linux驱动程序:统计单词个数
  • 原文地址:https://www.cnblogs.com/cqx6388/p/14103016.html
Copyright © 2011-2022 走看看