c-数组维界基址是什么东西呀

问题描述

数组维界基址是什么东西呀

typedef struct{
int *base;//数组元素基址
int dim;//数组维数
int *bound;//数组维界基址
int *constants;//数组映像函数常量基址
};
根本看不懂,求大神指点

解决方案

要结合例子去分析,你给的信息太少。

解决方案二:

bounds存的就是每一维里面的个数,
constants保存的是每一个维度如果下标增加1,那个对应到内存空间的下标应该增加多少。

解决方案三:

数组维界基址 ,我猜测是多维的每维的首地址

时间: 2024-11-03 15:33:49

c-数组维界基址是什么东西呀的相关文章

VB中判断数组维数

数组 设计思想:在VB中数姐最大维数是60,所以我们通过错误捕捉来处理这个问题,在这里我们用到UBound函数Public Function ArrayRange(mArray As Variant) As Integer Dim i As Integer Dim Ret As Integer Dim ErrF As Boolean ErrF = False On Error GoTo ErrHandle '判断代入的参数是否为数组 If Not IsArray(mArray) Then Arr

vb2010 不确定数组维数的过程输出

问题描述 我的程序需要个过程返回一组坐标值,PicturBox画线时用,一根线一组坐标,线的根数不确定,用数组返回值时比较麻烦,如果用多个过程分别返回,批量运算时浪费时间.在网上也没度到List(ofT),ArrayList的具体示例.请高手帮我做个示例.fori=1to1500X1=i*3(公式将来用其他公式替换)X2=i*5,X3=i*8X4=i*13X5=i*26next一根线时随意记录一个值,二根时随便记录二组的值,三根时随意记录三根.帮忙做个示例,并贴上代码,我能调出各个值去画线就行,

n维数组实现(可变参数表的使用)

首先先介绍一下可变参数表需要用到的宏: 头文件:#include<cstdarg> void va_start( va_list arg_ptr, prev_param );  type va_arg( va_list arg_ptr, type );  void va_end( va_list arg_ptr );   va_list:用来保存宏va_start.va_arg和va_end所需信息的一种类型.为了访问变长参数列表中的参数,必须声明              va_list类型

参数-三种传参,操纵二维数组

问题描述 三种传参,操纵二维数组 利用三种不同的方式在函数参数中,传递二维数组: void func(int **a,int m,int n); 利用二级指针 void func(int *a[],int m,int n); 利用一维指针数组 void func(int a[][10],int m,int n); 利用二维数组 请问:那种方式可以在函数func中通过参数a操纵传递进的二维数组?如果不能,原因是什么? 解决方案 下面这俩是等价的: void func(int **a,int m,i

[总结]C语言二维数组作为函数的参数

前言:今天在实现装配线调度程序时候,用到了二维数组,并将其作为函数的参数.在写程序的时候,遇到一些问题,即二维数组做函数的参数应该如何正确表示.我写程序的错误如下程序所示: 1 #include <cstdio> 2 void print(int *a[3]) 3 { 4 printf("%d\n",a[0][0]); 5 } 6 7 int main() 8 { 9 int a[2][3] = {1,2,3,4,5,6}; 10 print(a); 11 return 0

求助一道二维数组交换特定元素位置的算法题,谢谢大家!

问题描述 求助一道二维数组交换特定元素位置的算法题,谢谢大家! 刚试验了一下出了新问题- - 比如,一开始是左边的数组,我想"把2个0去掉,然后0上面的2就掉下来了",形成右边的新数组 然后我用了循环遍历,比如只看第二列,我的做法是"从下往上找,遇到0,就和0上面的数字交换",结果成了下面这个样子了- - 我有个改进想法是"还是从下往上找,遇到0之后判断上面的是不是0,如果是0,再继续向上再找,直到不是0,然后把这个数赋值给一开始那个0的位置",

C语言二维数组作为函数的参数

前言:今天在实现装配线调度程序时候,用到了二维数组,并将其作为函数的参数.在写程序的时候,遇到一些问题,即二维数组做函数的参数应该如何正确表示.我写程序的错误如下程序所示: #include <cstdio> void print(int *a[3]) { printf("%d\n",a[0][0]); } int main() { int a[2][3] = {1,2,3,4,5,6}; print(a); return 0; } 编译程序时候,在第10行提示错误信息:|

清华裴丹分享AIOps落地路线图,看智能运维如何落地生根

大家上午好,非常荣幸,能有这个机会,跟这么多的运维人一起交流智能运维.最近这两年运维里面有一个很火的一个词叫做AIOps(智能运维),并且有一小部分人一往无前的投入到AIOps中去了, 但是更多的人都还在持观望态度,因为大家内心中还存在一个无法回避的问题:AIOps到底在自己的场景下怎么落地?所以今天我要跟大家分享我认为的AIOps落地应该遵循的路线图.既有技术路线图,也有战略路线图.这虽然不是唯一的一个路线图,但这是我今后十年会不断努力.专注和迭代的一个方向,希望为那些对AIOps感兴趣的朋友

Delphi数组

  静态数组的定义方法 //1. 标准方法: var MyArr: array[0..10] of Integer; //定义静态数组 //2. 可以使用非0下标: var MyArr: array[9..10] of Integer; //不能提倡,这样不容易与系统函数沟通 //3. 根据预定义类型来声明数组: type TMyArr = array[0..10] of Integer; //先定义一个数组类型 var MyArr: TMyArr; //再定义静态数组 //4. 在非过程区可以