C++中的数组

本文介绍了如何在C++中拷贝一个整型数组到另一个数组,并通过示例代码展示了具体的实现方式。同时强调了C++不支持引用数组及数组初始化的一些限制,并提醒开发者注意数组边界检查的重要性。

C++不允许声明一个引用数组(即由引用组成的数组),

可以声名一个指针数组:

int  *iap[] = {&i, &j, &k};

 

不能用一个数组来初始化一个数组:

int  ia1[] = ia;(非法)

 

下面是把一个数组拷贝到另一个数组中去的例子:

  1 #include<iostream>
  2 #include<string>
  3 using namespace std;
  4
  5 const int array_size = 7;
  6 int ia1[] = { 0, 1, 2, 3, 4, 5, 6 };
  7 int main()
  8 {
  9     int ia2[array_size];
 10     for( int i = 0; i < array_size; ++i ){
 11         ia2[i] = ia1[i];
 12     }
 13     for( int i = 0; i < array_size; ++i ){
 14         cout << ia2[i] << " " ;
 15     }
 16     cout << endl;
 17     return 0;
 18 }
编译:$ g++ array_copy.c

运行:$./a.out

结果:0 1 2 3 4 5 6
但是用户必须清楚,C++没有提供编译时刻或运行时刻对数组下标的范围检查。除了程
序员自己注意细节,并彻底地测试自己的程序之外,没有别的办法可防止数组越界。能够通
过编译并执行的程序仍然存在致命的错误,这不是不可能的。

 

这里的数组、以及数组与指针的关系与C中的一样的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值