关于C++数组简单的问题
昨天居然被一个C++白痴问题难住了 就是一个题目 题目
1 | 设有下定义的语句: [c]int a3={10,20,30,40,50,60}; int b3={10,20,30,40,50,60};[/c] 则a1*b2的结果为() |
结果,我把怎么也想不好了 把定义数量弄成了地址量(大概就是怎么说的吧)~ 我来解释一下 例如: a[x][y]={}; x、y只是表示计算机分配内存的数量,不表示地址,x、y不是从0计算的,而表示数据的空间是从地址算的 例如填入数字 a[2][3]={} 地址为 a[0][0] a[0][1] a[0][2] a[1][0] a[1][1] a[1][2] 而不是 a[1][1] a[1][2] a[1][3] a[2][1] a[2][2] a[2][3] 记住计算机在内存中是以0开始计数,C系列里的基本都是这样 所以说地址量和分配量计数方式不同 我在VC++里验证的截图 答案是C)2400 下面是验证代码:
1 |
|
如果有什么错误请指正~