zoukankan      html  css  js  c++  java
  • 详解sizeof与strlen

    一,sizeof是C语言的一种单目运算符,与C语言的其他运算符++,--一样,它并不是函数;sizeof()以字节为单位给出了操作数的大小;sizeof的值是无符号int。

         strlen是一个函数,只处理字符数组,遍历字符数组中每个元素,当遇到''时停止遍历,返回字符数组中字符的个数,sizeof的值是无符号int。

    二,sizeof

       1,sizeof用于数组,返回编译时分配的数组空间大小,如果字符数组,注意有'':int num[4]; sizeof(num) 返回16、char str[] = "hello";sizeof(str)返回6。

       2,sizeof用于指针,返回存储该指针所用的空间大小(存储该指针的地址的长度,是长整型,应该为4):char *p = "weqwe";sizeof(p)返回4。

      3,sizeof用于类型,返回该类型所占的空间大小

     

    数据类型 所占字节数
    char 1字节
    short (short int) 2字节
    int 4字节
    long (long int) 4字节
    float 4字节
    double 8字节
    long long(long long int) 8字节
    long double 10字节

      4,sizeof用于对象,返回对象的实际占用空间大小

      5,sizeof用于函数,函数的返回类型所占的空间大小。函数的返回类型不能是void。

    三,sizeof的常量性

       sizeof的计算发生在编译时刻,所以sizeof被当作常量表达式用。

  • 相关阅读:
    Linux运维工作总结教训
    java-GC
    java设计模式-原形模式
    java-桥接模式
    java-装饰者模式
    java-正则表达式
    java设计模式-建造者模式
    Python 条件与循环
    Python 集合、字典、运算符
    Python 字符串拼接、格式化输出、深浅复制
  • 原文地址:https://www.cnblogs.com/usa007lhy/p/3341751.html
Copyright © 2011-2022 走看看