单片机c语言编程 数组赋值问题:
uchar code table2[]={"12.3"};
uchar temp=154;
table2[0]=temp/100;
table2[1]=temp%100/10;
table2[3]=temp%10;
编译说重复定义了,请高人指点,谢谢!
追问:可是uchar不是字符型才对吗?
我改成这样,可是还是不行。。。请高人指点!!
uint data dis[4];
uint temp=154;
dis[0]=temp/100;
dis[1]=temp%100/10;
dis[2]='.';
dis[3]=temp%10;
还是同样的问题,重复定义。。。我快抓狂了,,为什么呢恩恩,我有尝试改了,可是改成这样,还是不行,请帮忙看看吧。
uint data dis[4];
uint temp=154;
dis[0]=temp/100;
dis[1]=temp%100/10;
dis[2]='.';
dis[3]=temp%10;
还是同样的问题,重复定义了。。
答案:table2[0]=temp/100;
table2[1]=temp%100/10;
table2[3]=temp%10;
把这三行放进处理子函数里;或直接放到主函数里
其他:用code定义的变量,不能被赋值. 在C51中,code是关键字,它指定编译器将定义的量存放在程序存储区,也就是定义的是常量,是不能在程序中修改的。另外那位说unchar是整形,而数组里带小数点,这个是没问题的,因为你的数组元素上有个" ",这表示定义的是数字的ASCII码
上一个:关于C语言链表的修改。。。 这个函数哪里错了??
下一个:谭浩强《C语言程序设计》第四版的课后习题答案,请童鞋们帮吗啦!发到7631296793@qq.com