永发信息网

我想定义n个变量怎么办?

答案:3  悬赏:80  手机版
解决时间 2021-03-22 09:26
我想定义n个变量怎么办?
最佳答案
数组是静态分配内存的,也就是编译时就分配好,不能在程序执行时改变,动态分配内存可以用malloc函数,比如:
int n;
scanf("%d", &n);    // 输入数组大小
int *a = (int *)malloc(sizeof(int)*n);    // malloc是以字节为单位分配的,所以要用int型的大小乘以长度
for(int i=0;i    printf("请输入a[%d] :", i);
    scanf("%d", &a[i]);
}
全部回答

可以利用动态内存分配

int n=5;
int *a=(int*)malloc(sizeof(int)*5);

另注:C99后支持可变长数组,所以lz的做法在C99后是允许的

追问谢谢了。
int n=5;
int a[n];这个是因为n是变量。所以不行
一般这样
#define n 5;
int a[n];
上面的可以
第二种,直接输入常数 如 int a[5];
如果不知道n有多大,一般会将数组定义一个比较大的数组。如int a[100];
当然还有动态分配空间,这里你肯定没有学,这种方式比较复杂,以后会知道的追问谢谢。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎么看海信电视配置
出唐八杰里有谁?代表作品是什么?
单选题Whenhearingthemuddyroad________the
万业服饰城地址有知道的么?有点事想过去
我家旁边有家卖水泥的店,叫豪福水泥,有人知
我奶奶没了,我怎么不哭,怎么办
KClO3和浓盐酸在一定温度下反应生成二氧化氯
久悦商务宾馆这个地址在什么地方,我要处理点
酒驾出车祸撞死两人,要坐多少年牢?
搭帐篷用英语怎么说?
单选题TheBritishdrink________ofteaju
有一个问题困扰我很久了 就是发这个微博的人
开早餐店做汤粉的汤怎么做
八门全开对上佐助的须佐能乎有胜算吗
张洪义口腔地址有知道的么?有点事想过去
推荐资讯
宫商角徵羽讲的是什么
草酸艾司西酞普兰片
5.2裁缝有加攻击强度或者敏捷的腿部魔线么,
MT4跟MT5有什么区别?
请问安卓手机怎么设置能在手机丢了后最大保证
空运禁止带的物品有什么?
什么药能让人产生幻觉,早上晨跑的最佳时间是
怀孕三个多月了,髂骨有点疼什么原因
关于桃花位放花瓶的问题,为何说法不一呀?
中国移动青田县鹤城路营业厅在什么地方啊,我
CIDR无类域路由技术。发展这种划分IP地址新技
豫卦变否卦 能和这个女生结婚吗
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?