zoukankan      html  css  js  c++  java
  • sizeof运算符和strlen函数的区别

    1、sizeof是运算符,而strlen是函数。

    2、sizeof操作符的运算结果为size_t,他在头文件中的typedef为unsigned int。该类型保证能容纳所操作对象的最大字节大小。

    3、sizeof可以用类型做参数,而strlen只能用char*做参数,且必须是以‘’结尾。

    4、数组做sizeof参数不退化,而做strlen就退化成指针。

    5、大部分编译程序在编译的时候就把sizeof处理过了,这就是sizeof(x)可以用来作为数组空间大小的原因。

    char str[20]=“0123456789”;

    a=strlen(str);     // a=10,运行时确定

    b=sizeof(str);   //b=20,编译时确定,计算str数组的最大空间。

    6 、 sizeof后面如果是类型则必须加括号,如果是变量名则可以不用加。

    如: char c ;

          sizeof c;// c为变量名则不用加括号

    7、sizeof运算符不适用于计算对象是动态分配的空间以及外部数组。

  • 相关阅读:
    [C#1] 2类型基础
    [C#2] 5迭代器
    [C#1] 6方法
    [C#1] 8数组
    [C#1] 12特性
    [C#1] 10事件
    [C#2] 2匿名方法
    实用代码JavaScript实用小函数一枚(深入对象取值)
    [C#1] 11接口
    实用代码C#获取本机网络适配器信息及MAC地址
  • 原文地址:https://www.cnblogs.com/kane0526/p/3584669.html
Copyright © 2011-2022 走看看