我在c#中这么写的 list<int> array = new list<int> ()为什么不能用array来表示list
答案:2 悬赏:10
解决时间 2021-02-13 04:09
- 提问者网友:陪我到最后
- 2021-02-12 14:37
我在c#中这么写的 list<int> array = new list<int> ()为什么不能用array来表示list
最佳答案
- 二级知识专家网友:懂得ㄋ、沉默
- 2021-02-12 15:16
试试List呢
全部回答
- 1楼网友:蜜罐小熊
- 2021-02-12 16:27
int array[100]; 定义了一个数组,array是数组的名字,array在系统处理时,的确是用整型指针处理的,array中记录了数组在内容占用空间区域的首地址。
你使用的 int array[]; 的定义方式,只能用于在子函数中定义参数数组时使用,此时参数数组的大小由实际参数数组的大小确定。
int *array;也可以定义数组,但是有效使用时,必须首先为指针申请空间:
array=(int *)malloc(sizeof(int)*100);
开设空间之后,指针array与数组 int array[100]; 在使用时具有相同的功效。
但是要注意,使用数组定义,array就相当于一个记录数组首地址的常数,是不能被改变的。
而定义为指针的array,在释放空间free(array)之后,可以重新申请新的空间,即可以重新被赋值使用,如:array==(int *)malloc(sizeof(int)*500);
所以,简单的说,定义的数组名就相当于一个指向数组首地址的地址常数,
定义的指针,相当于一个指向数组首地址的变量。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯