关于C/C++的编辑器VC6++无法使用动态数组问题

在这里插入图片描述(查了半天的原因的我,一直冷静不下来)
在同班同学大部分都用VC6++的情况下我也只能盲目跟从使用VC6++,后来发现VC6++的重大弊端之一,不得不说,VC6++的问题真的太多了,跟Dev比起来,还是Dev更好点……
如图,我们可以看到关于这些错误的代码号,如果在官方发布的代码表查询下不难发现这些都是关于a[n]里面的变量问题,就算前面n的值是由cin给的,但根据VC6++的逻辑来看,似乎好像只能看成一个未知数,所以IDE会报错
如果你想了解关于错误事项的代码表又苦于英语不好的同学们,请点击点我来查询各种错误的代码对于的中文解释,希望这篇文章能帮助到VC6++的同学。
好了,开始说正事:

VC6++无法使用动态数组

代码图:

#include<iostream>
using namespace std;
int main()
{
	int n,t;
	cin>>n;//给n赋值
	int a[n];//问题的根本原因之处!!!
	for(int i=1;i<=n;i++)
		cin>>a[i];
	for(int x=1;x<n;x++)
		for(int y=1;y<=n-x;y++)
			if(a[y]<a[y+1])
			{
				t=a[y];
				a[y]=a[y+1];
				a[y+1]=t;
			}
	cout<<a[1];
	return 0;
}

效果图
VC6++:
在这里插入图片描述Dev C++:
在这里插入图片描述
关于报错的各种错误代码对应的中文解释:

  1. 不能使用变量为数组下标

在这里插入图片描述

  1. 长度不能为0(这个如果数组没有分配成功是会随着上面一块报出来)

在这里插入图片描述

  1. 就算数组不给变量,也会报错

在这里插入图片描述
通过看以上的IDE报错问题大家应该是能知道关于VC6++是为什么无法使用动态数组,这里是因为VC6++用的是上个世纪的C标准——C89,C89里面是不支持这个玩意的,而且VC6++现在基本不支持新的C标准——C99C11,也就是说这个局限性太大。
那么为什么微软会采取这种落后形式?可能是因为没有利润,毕竟对商家来说统一采取新标准意味着一个投资,没必要做徒劳的事情。
好了,以上就是今天的问题,如果你感兴趣可以点赞并且关注哟!
在这里插入图片描述
有一说一,半夜查原因真的头秃

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长高

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值