C++数组

C++数组

定义

  • 数组的长度是固定的,一经创建就不允许添加新的元素

  • 不允许使用另一个数组对数组初始化

    int a[12];
    int b = a; //error
    int b[](a); //error
  • 数组是一种复合数据类型 ,其主要构成:

      1. 类型名
        • 可以是C++内置数据类型
        • 类类型
        • 除引用外的复合数据类型
      2. 标识符
      3. 维数
        • 必须是(>=1 的)常量表达式,要运行时才知道的变量不能用于数组定义

初始化

  • 显示初始化

    const unsigned array_size = 3 ;
    int ia [array_size] = {1,2,3};
    • 如果没有显示初始化:
      1. 函数体外的内置数组,其元素初始化为 0
      2. 函数体内的内置数组,其元素不初始化
      3. 若元素为类类型, 自动调用类的默认构造函数初始化
    • 显示初始化 {} 内元素个数n1 与维数n2不匹配
      1. 维数n2更大,剩余的自动初始化为0 或调用类构造函数初始化
      2. 个数n1更大,出错

特殊的字符数组

  • 初始化

      1. 用字符字面值初始化
      char ca1[] = {'a','b','c'}
      1. 用字符串字面值初始化,多了 ‘\0’ 结尾
      char ca2[] = "abc";
      // 相当于:
      // char ca2[] = {'a','b','c','\0'}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值