最近Visual Studio上写C++碰到的一些坑。(持续更新)

上C++课程,电脑上的编译器只装了VS,另一台电脑没带回来,那就用VS写C嘎嘎吧,这篇随笔记录最近踩过的那些坑。

1.关于VS暂停控制台窗口的问题。

好不容易写完作业代码,编译运行一下看看效果,结果VS窗口一闪就退出了,我:???
C#中学到的一种解决方案是在结尾插一句:Console.ReadKey()。示意程序等待我们输入一个键。

那西嘎嘎呢?
查了一下,可以用这种方法:
system(“pause”);
//从程序中发起系统命令行调用,执行命令:pause。让控制台暂停,等待用户信号。
效果和上面的Console.ReadKey()一致。
在这里插入图片描述

2.关于VLA问题。

之前做蓝桥杯模拟题,碰到一个关于数组的问题,但我愣是没法解决,查了半天发现和VS和C++标准有关。

下面这段代码在DEV C++下可以正常编译运行,但在Visual Studio里编译就会报错,
int n;
cin >> n;
int a[n];
它说n不是常量值,编译时无法确定这个值。
我:?? C语言中我记得这样用完全没问题啊???

上网翻找了下,原来该部分内容称为VLA(可变长数组),因为C99标准支持VLA,所以在C语言中我们可以这么干。
但是VS的集成开发环境对C99的支持是不完备的,它一直就不允许VLA,而C++11的标准也不支持VLA。所以我们无法在Visual Studio中写出上述代码。
但GCC编译器可以。
参考博客:https://blog.csdn.net/veghlreywg/article/details/90382294(博主:未来老干部)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值