C程序如何从数组内部获取信息?

问题描述 投票:3回答:3

2

我读了这个。

cc++中数组的内部工作原理

基础数组教程

但我还是不太明白C程序是如何通过索引从数组中检索出一个特定的值。

似乎很清楚,数组的数据元素在内存中是相邻存储的,数组名指向第一个元素。

C程序是否足够聪明,可以根据数据类型和索引进行运算,以找出目标数据的准确内存地址,还是程序必须以某种方式迭代每一个中间数据才可以到达那里(如linkedlist数据结构)?

更为根本的是,如果一个程序通过内存地址来要求一个信息,机器如何找到它?

c arrays computer-architecture
3个回答
7
投票

我们举个更简单的例子。假设你有一个数组 int test[10] 它是这样存储在地址1000的。

1

© www.soinside.com 2019 - 2024. All rights reserved.