[开发工具] iar定义数组不能省略下标吗?

[复制链接]
2245|16
 楼主| 负熵 发表于 2018-6-16 17:54 | 显示全部楼层 |阅读模式
char a[]编译的时候会有警告,如果想定义一个数组,但不确定有多少个变量的话怎么定义数组?
dongliushui 发表于 2018-6-18 16:50 来自手机 | 显示全部楼层
只能用指针
heimaojingzhang 发表于 2018-6-19 14:15 | 显示全部楼层
如果你的数据最多有100个 你可以选择定义数组大小为200,这样没有用的可以用零填充;当然还有一个办法就是用指针喽
iDiy 发表于 2018-6-19 14:37 | 显示全部楼层
去搜索一下 C语言可变数组,有你需要的答案
 楼主| 负熵 发表于 2018-6-20 19:02 | 显示全部楼层
感谢各位,我看了下往上有些程序,直接用一个变量表示下标,这样应该也可以吧,例如这样
char i;
char a[i];
xinpian101 发表于 2018-6-20 20:53 | 显示全部楼层
如果你没有初始化,肯定不行。
xinpian101 发表于 2018-6-20 20:53 | 显示全部楼层
c语言也不许你这么干。要么定义大小,要么定时时候初始化。
wowu 发表于 2018-6-20 21:56 | 显示全部楼层
需要定义时候给大小或者用数组
gujiamao12345 发表于 2018-6-21 16:11 | 显示全部楼层

C99已经支持变长数组了,而且函数返回已经自动释放了,比malloc方便些;
598330983 发表于 2018-6-22 11:48 | 显示全部楼层
gujiamao12345 发表于 2018-6-21 16:11
C99已经支持变长数组了,而且函数返回已经自动释放了,比malloc方便些;

这个要看他用的编译器是不是支持C99,
598330983 发表于 2018-6-22 11:49 | 显示全部楼层
IAR支持这个吗,楼主随便写个helloWord试试看。
gujiamao12345 发表于 2018-6-22 15:37 | 显示全部楼层
598330983 发表于 2018-6-22 11:48
这个要看他用的编译器是不是支持C99,

iar、mdk肯定支持的
不支持的设置下就可以了
CaLipton 发表于 2018-6-25 19:36 | 显示全部楼层
需要在初始化里处理
android2 发表于 2018-6-26 22:40 | 显示全部楼层
char i;
char a

char型是-128~127,是不是i也就是这么多
joketinnle 发表于 2018-6-29 09:25 | 显示全部楼层
定义全局变量的数组 应该是OK的
如果定义缺省的局部变数就会出错。
Rospiers 发表于 2018-6-30 15:56 | 显示全部楼层
用数组比较方便
keaibukelian 发表于 2018-7-17 16:00 | 显示全部楼层
比你最多的数据量再大点就可以了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

32

主题

80

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部