zoukankan      html  css  js  c++  java
  • sizeof() strlen()

    sizeof是运算符,strlen是函数

    1) sizeof( type_name ); // sizeof( 类型 );
    2) sizeof object; // sizeof 对象
    sizeof后,若为类型必须加括弧,若为变量名可以不加括弧。这是因为sizeof是个操作符不是个函数。

    1. strlen()

    strlen只能用char*做参数,且必须是以''''结尾的

    当string中含有空字符’’,使用strlen()获取string的长度时会被截断,使用成员函数length()和size()可以返回string的真实长度。

    string strTest="good";

    strTest[2]=0;

    strlen[strTest]==>>2;

    2、sizeof()   指针与数组

    https://blog.csdn.net/Colorful_lights/article/details/79819682

     sizeof(数组名):返回数组所有元素占有的内存空间字节数。

      sizeof(指针)  :返回计算机系统的地址字节数,如果是32位系统,返回4,16位系统返回8。

    3、sizeof()  strlen()  wcslen() 区别

    https://blog.csdn.net/hczhiyue/article/details/6248229

    strlen返回的是字节数(对中英文不一致,中文占两个字节,不包括'/0')

    wcslen返回的是字符数(对中英文一致)

    sizeof返回的是字节数(包含'/0',而'/0'在Unicode下也是占两个字节的)

    char ch[]="abcd";
    sizeof(ch);//5
    strlen(ch);//4

    4、sizeof 

    当适用了于一个结构类型时或变量, sizeof 返回实际的指针或变量的大小;

    当适用一静态地空间数组, sizeof 归还全部数组的尺寸,例如字符数组的的尺寸;
    sizeof 操作符不能返回动态地被分派了的数组或外部的数组的尺寸;
    数组做sizeof的参数不退化,传递给strlen就退化为指针了。
    sizeof后,若为类型必须加括弧,若为变量名可以不加括弧。这是因为sizeof是个操作符不是个函数。
    char Array[20] ="012345";
    cout << sizeof(Array) << endl; \20  \静态数组
    char *p = Array;
    cout << strlen(p) << endl;
    cout << sizeof(p) << endl; \4  \动态指针

    5、

  • 相关阅读:
    论有一个服务器后可以干什么
    golang的安装后的文件目录解析
    使用go自带的http包搭建一个的web服务器
    python字符串问题—文件排版
    Python 整数的N进制字符串表示,循环和函数_亲密数,DNA匹配A
    mongodb 基本CRUD
    pip;python包管理工具
    STM32中assert_param的使用
    stm32.cube(一)——系统架构及目录结构
    HTTP、TCP、UDP,Socket,HTTPS
  • 原文地址:https://www.cnblogs.com/wllwqdeai/p/10289638.html
Copyright © 2011-2022 走看看