Advertisement

C语言 virtual array

阅读量:

8-6,8-7

复制代码
    int array_offset(int arrayinfo[],...);
    
    
    AI写代码cpp

该函数接收一组用于描述伪数组维度的参数以及一组索引值。通过调用该函数后,在内存管理上实现了向量式的布局与mallco式的虚拟空间划分相结合的方式。然而,在实际应用中人们通常会按照多维数组的方式访问这些虚拟空间。尽管编译器在此类情况下将其视为一维向量(即所谓的'伪数组'),但由于该函数允许其在运行时按照多维结构进行访问操作这一特性被保留了下来。

这个函数的参数如下:

参数 含义
arrayinfo 一个可变长度的整型数组,包含一些关于伪数组的信息。 arrayinfo[0]指定伪数组具有的维数,它的值必须在1和10之间。 arrayinfo[1]和arrayinfo[2]给出第一维的下限和上限, arrayinfo[3]和arrayinfo[4]给出第2维的下限和上限, 依次类推。
... 参数列表的可变部分可能包含多达10个的整数,用于标识伪数组中某个特定位置的下标值。你必须使用va_参数访问它们,当函数被调用时,arrayinfo[0]参数将会被传递。

公式基于下面给出的特定下标值来计算一个数组的位置。其中这些变量s₁, s₂ 等则表示相应的特定下标参数s

全部评论 (0)

还没有任何评论哟~