[C语言] 数组问题求解

[复制链接]
2312|9
 楼主| 亲亻尔嘴 发表于 2013-8-1 09:45 | 显示全部楼层 |阅读模式
本帖最后由 亲亻尔嘴 于 2013-8-1 09:49 编辑

现在定义 全局变量 数组 char a[3], 这个数组中的 a[0] , a[1] 是可以任意赋值的, a[2]中存放的是a[0]与a[1]的和;
我在其他函数里修改了a[0],或者a[1]; 怎么编程能实现a[2]可以自动刷新成a[0]与a[1]的和?

难道我要每次修改a[0],或者a[1]的时候都要写一句 : a[2] = a[0] + a[1]    !!!!
叶伤 发表于 2013-8-1 11:21 来自手机 | 显示全部楼层
#define SUMa[] a[2]=a[0]+a[1]需要读a[2]的时候插一个SUMa[];要是进行监控,随时相加估计比较麻烦,不然就这样
#define a2 (a[0]+a[1])

把程序里的a[2]替换成a2,心里会好受点哈,而且又少打两个字符,只不过每次都要进行计算,但还是比监控占用的资源少点。

记得注释里要写好。。不然以后再看就要晕了
minDragon 发表于 2013-8-1 11:39 | 显示全部楼层
2楼用宏定义的方法也可以~
minDragon 发表于 2013-8-1 11:45 | 显示全部楼层
看到你的问题的我也有新问题了~数组的元素可以是表达式吗?
比如说:
     unsigned char a[]={X1;X2;X1+X2}
晚上回去验证一下~如果可以的话~只要你调用a[2];应该就会执行X1+X2的~
叶伤 发表于 2013-8-1 13:39 来自手机 | 显示全部楼层
minDragon 发表于 2013-8-1 11:45  看到你的问题的我也有新问题了~数组的元素可以是表达式吗?  比如说:  unsigned char a[]={X1;X2;X1+X2 ...

提示错误C247
21ID 发表于 2013-8-1 14:18 | 显示全部楼层
不行的
568581185 发表于 2013-8-1 14:32 | 显示全部楼层
用宏定义可以
chenbb8 发表于 2013-8-1 14:46 | 显示全部楼层
很奇怪LZ的要求,加一句又怎么了,这不是很正常的事么。
 楼主| 亲亻尔嘴 发表于 2013-8-1 15:01 | 显示全部楼层
chenbb8 发表于 2013-8-1 14:46
很奇怪LZ的要求,加一句又怎么了,这不是很正常的事么。

就是觉的总是加很费事···
 楼主| 亲亻尔嘴 发表于 2013-8-1 15:02 | 显示全部楼层
叶伤 发表于 2013-8-1 11:21
#define SUMa[] a[2]=a[0]+a[1]需要读a[2]的时候插一个SUMa[];要是进行监控,随时相加估计比较麻烦,不然 ...

谢谢,我都没想过宏定义··
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

46

帖子

0

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