我初学单片机,看网上有人说keil有人说keilC,这两者有区别吗?是不同的...
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我初学单片机,看网上有人说keil有人说keilC,这两者有区别吗?是不同的...相关的知识,希望对你有一定的参考价值。
我初学单片机,看网上有人说keil有人说keilC,这两者有区别吗?是不同的软件吗?
这是两个不同的概念,Keil是软件,KeilC是语言。Keil是单片机的开发,编译,调试环境,KeilC是开发单片机所用的语言,也就是C语言在单片机中的应用。现在Keil这种开发环境已经有很多版本了,而且有针对不同的硬件版本,比如说Keilfor
C51,Keil
for
arm。 参考技术A 你好!
严格上说,keil
c是keil里面的一个编译软件,但是大家说的应该是一种。因为现在用keil
c的比较多。但是keil好像还有关于AVR,ARM方面的编译器。
打字不易,采纳哦! 参考技术B keil
c是keil里面的一个编译软件,keil中还有关于AVR,ARM方面的编译器
用Keil编译单片机程序时,我定义了一个局部变量但没使用,(此时编译器警告set but neve
用Keil编译单片机程序时,我定义了一个局部变量但没使用,(此时编译器警告set but never used),我检查栈内存的时候找不到该变量,请问该变量是存在哪里了?还是直接丢弃了?跪求单片机大神解答
参考技术A 该变量是存在哪里了?--被其它变量覆盖了
还是直接丢弃了?
--也算是丢了。追问
我在网上查了一下,说局部变量在定义的时候分配的栈内存,不应该是每个变量都会有自己的栈空间吗,难道说一定要使用了才会给它分配内存?
追答说局部变量在定义的时候分配的栈内存,...
--不过是凭空的、信口开河而已。
难道说一定要使用了才会给它分配内存?
--Keil软件,其优化编译的智能性,不是一般人能理解的。
--不仅的变量。
--你还可以写一个函数,但是,你不调用它。
--编译后,你再找找,这个函数,它存在吗?
也就是说是Keil把这些没用到的东西都优化掉了,也可以理解,毕竟本来内存就不多。谢谢啦
本回答被提问者采纳 参考技术B 应该是编译器直接优化了,可以不管它。追问现在在做一个调试小工具,就是要找到这些变量所在的地址,然后读取变量的值
参考技术C 找出这个警告的前面的名称去搜索就知道了追问在哪搜索?
参考技术D 万以上是关于我初学单片机,看网上有人说keil有人说keilC,这两者有区别吗?是不同的...的主要内容,如果未能解决你的问题,请参考以下文章