栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

VScode中定义数组的小问题

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

VScode中定义数组的小问题

//bug(feature) in VS code about arrays
	const int NUMBER = 5;
    int count[NUMBER] = {0, 0, 0, 0, 0};

如上代码,会得到error

error: variable-sized object may not be initialized

而两种修改方法可以避免报错

  1. 更换常量定义
    有一种说法,const int number = 5; 的定义法实际为 只读变量
    而改用 #define number 5 的定义则不会报错。
    同理,放弃常量定义直接采用 int count[5] = {0,0,0,0,0}; 同样可以规避这个问题。

  2. 随后赋值
    在另一种说法中,C语言无法在定义数组的同一行予以赋值,虽然在实际运用中完全可行,不过提供了解决此问题的另一种思路:

	const int NUMBER = 5;
    int count[NUMBER];

	for (int i = 0; i < 10; i++)
	{ 
	count[i] = 0;
    }

这种方法相对第一种增加了代码行数,for循环进行数组定义也是相当常见的方法,不过对于某一特定无规律的有限数组如[1,2,3,2,4,1]之类,for循环实现起来则更加困难。

ps:作为零基础萌新,选择了Harvard的cs50x作为入门,之前的作业部分都是采用cs50团队基于Github上的工作台开发的VScode云版本。这段时间补c语言基础顺便调试了自己安装的VScode,除了配置环境之外大大小小的更改也是数不清,现在还无法流畅地用终端编译、运行、用argv参数,用debugger和valgrind等等。。。唯一的好处是真的美观了很多(

第一篇csdn上的博客,虽然几乎没人看得到,就用这里来记录一下学编程的路径和大大小小的问题。 hello,world. :)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1030322.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号