今天给各位分享c语言如何用变量定义数组元素个数的知识,其中也会对c语言中数组定义大小可以使用变量么进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、c语言中可不可以用变量定义数组的个数2、c语言中可不可以用变量定义数组的个数;3、C语言怎么用变量定义来数组元素个数?
c语言中可不可以用变量定义数组的个数
数组不可以, 但是有变通的方法
int n;
scanf(“%d”,n);
int *s;
s=(int*)malloc(sizeof(int)*n);
//相当用定义了一个长度为n的int数组,调用和数组一样,s[0],s[1]…..
c语言中可不可以用变量定义数组的个数;
c语言中不可以用变量定义数组的个数。
可以使用mallo函数
mallo函数返回的实际是一个无类型指针,必须在其前面加上指针类型强制转换才可以使用;
指针自身=(指针类型*)malloc(sizeof(指针类型)*数据数量);
int*p=NULL;
intn=10;
p=(int*)malloc(sizeof(int)*n);
扩展资料
mallo函数使用注意事项
调用malloc函数时,它沿连接表寻找一个大到足以满足用户请求所需要的内存块。然后,将该内存块一分为二(一块的大小与用户请求的大小相等,另一块的大小就是剩下的字节)。接下来,将分配给用户的那块内存传给用户,并将剩下的那块(如果有的话)返回到连接表上。
调用free函数时,它将用户释放的内存块连接到空闲链上。到最后,空闲链会被切成很多的小内存片段,如果这时用户申请一个大的内存片段,那么空闲链上可能没有可以满足用户要求的片段了。
C语言怎么用变量定义来数组元素个数?
定义时直接用变量不行,但可以先定义一个希望数组类型的指针,使用的时候动态申请变量所表示的大小,并赋值给前定义指针,申请成功后就可以像数组一样使用了(指针名就是数组名)
int
*myarr;
int
size;
size
=
10;
myarr
=
(int
*)malloc(size
*
sizeof(int));
myarr[0]
=
123;
myarr[size-1]
=
999;
c语言如何用变量定义数组元素个数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于c语言中数组定义大小可以使用变量么、c语言如何用变量定义数组元素个数的信息别忘了在本站进行查找喔。