如何获得内存中数组的结束地址? C编程

问题描述 投票:-1回答:1

如果我在内存中有一个整数数组的开始地址,我该如何找出数组的结束地址?

例如,如果数组以0xFF000000开始,您将如何返回该数组结束处的地址?

c memory memory-address
1个回答
0
投票

给定整数数组的地址,您需要知道数组中有多少个,因为整数可以为零。换句话说,如果没有定界符指示数组的末尾,则无法知道在数组中实际存储了多少个值。

基本堆数组至少应具有存储元素数量的第二个变量。还分配了什么呢?

int nElements = 10; int *pInts = (int*)malloc(nElements * sizeof(int)); int *pEndOfArrayAddress = pInts + (nElements-1);

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