如何初始化一个指针数组

如题所述

int a[5]={....}
int* pt[5];
for(i=0;i<5;i++)
{
pt[i] = &a[i];
}
以上为一个小例子,指针数组不可以直接赋值,因为指针本质上是一组地址。但可以通过“指向”赋值
温馨提示:内容为网友见解,仅供参考
无其他回答

C指针数组的初始化
也就是说数组的每个元素都是指向float 类型变量的指针,你直接用数值360去赋初值,肯定是错的,0是正确的,因为它把0当成了空指针NULL来处理。正确的赋值方法,只有声明几个float类型的指针变量,再用这些指针变量给指针数组 ranges 赋初值。比如:float a,b,c;float *ranges[]={&a,&b,&c};...

结构体指针数组怎么初始化?
int a[]={1,2,3,4,5}; \/\/OK (2)int a[5];a={1,2,3,4,5};\/\/ERROR 结论:对于数组用大括号{}的赋值方式只是在定义的时候适用 否则必须用循环的方式 结构体初始化(方法一)using namespace std;struct S{ int i;float f;};struct S s={10,15.5};\/\/使用{}的正确方式 如果改...

结构体指针数组怎么初始化
可以使用循环的方式,创建20个对象,然后依次将所得到的指针放置到数组里面。如果你想创建20个堆区的对象,必须要使用20个new操作。也就是不可避免的调用20次new。但是如果你想在堆区一次性创建一个数组,存放20个对象,可以使用new Stuinf[nu]的方式。不过该返回值与Stuinf *st[nu];的实际结果不...

c指针数组初始化问题
三、每个类型元素的数组,则无论是否使用括号,都会自动调用其默认构造函数来初始化。四、定义指针之后,将一个同类型变量的地址赋值给指针,给其开辟一段内存,指针存放的就是这段开辟内存的首地址。五、字符型指针的初始化可以在定义时候直接赋值。

指针数组初始化
你可以这样,使用malloc这个函数,去向内存申请16X16 int类型那么大的空间出来。但是,这么申请完成一后,想往里写数据就不能使用数据下标的方法去写数据了,需要计算出int类型号的大小用手动的方法写入。还有一个malloc申请出来的空间是一个一维的空间,如果你想往2行2列里写就需要转换了。我只是给你了...

C++求数组指针初始化方法
用个for循环,对a[]每个值都赋值0就可以了啊

对一个INT型的指针数组如何赋初值?
C语言中指针数组通常是用来构成字符串数组,所以也被称字符串数组。所以你的赋值应该是用'' "表示的字符串。如果你要不报错,可以这样做:int a[]={1,2,3,4,5,6,7,8,9};

C++中指针的用法有那些?怎么定义?怎么初始化?
组或函数。这样一来,凡是出现数组,函数的地方都可以用一个指针变量来表示,只要该指针变量中赋予数组或函数的首地址即可。这样做,将会使程序的概念十分清楚,程序本身也谭浩强 C语言程序设计 2001年5 月1日精练,高效。在C语言中,一种数据类型或数据结构往往都占有一组连续的内存单元。 用“地址”这个概念并不能...

C语言 指针二维数组怎么初始化
1、数组指针初始化方法:int (*p)[4];char a[3][4];p=a;p=&a[0];p=a+1;p=&a[1]; \/\/都正确 p=a[0]; \/\/错误 p=a[1]; \/\/错误。2、首先,指针p表示的是,指向一个含有4个元素的一维数组的指针,因此,必须把一个含有4个元数的数组的地址赋给指针p才会正确。因为二维数组...

数组指针的初始化问题
char (*p)[4]是一个数组指针,限定了每一维的数组长度为4.那么:char a[6][4];char b[3][4];都可以有:p = a;p = b;--- 另外如果数组的m,n都不确定,也可以这样:int m,n;scanf("%d %d", &m, &n);char **p;p = (char **) malloc(sizeof(char*) * m);for(int i ...

相似回答