zoukankan      html  css  js  c++  java
  • 定长字符数组与不定长字符数组的初始化

    一、定长字符数组的初始化

    方法1、char Data[256]="";

    方法2、char Data[256]={0};

    方法3、char Data[256];

                 memset(Data,0,256);

    方法4、char Data[256];

                Data[0]='';

    上面四种方法中,前三种都可以把字符数组中所有元素置成0,第四种方法只是把第一个元素置0,后面的元素值都是随机的。用strlen获取字符串长度都为0;

    二、不定长数组的初始化

    不定长字符数组的声明或创建

    声明、char Data[N];//这种方式在Qt上编译正常,但是声明时不能直接初始化(上面定长字符数组方法一和方法二),需要用以下几种方法初始化

    方法一、Data[0]='';

    方法二、memset(Data,0,sizeof(Data));

    创建、char* Data = new char[N];//VS下需要new

    初始化:

    方法一、Data[0]='';

    方法二、memset(Data,0,sizeof(Data));

    注意:区分char* p = new char[N]与char* p = new char('c')的区别,释放方式也不同

    char* p = new char[N];//是开辟一个数组,delete p;

    char* p = new char('c')//开辟一个内存单元,并用括号里的初始化,delete [] p;

  • 相关阅读:
    C#-练习题
    C#-命名空间(十五)
    C#-枚举(十三)
    C#-多态(十二)
    C#-继承(十一)
    C#-结构体(十)
    C#-类(九)
    C#-方法(八)
    二叉树深度遍历和广度遍历
    iOS main.m解析
  • 原文地址:https://www.cnblogs.com/zhangnianyong/p/8532608.html
Copyright © 2011-2022 走看看