大家好,今天小编关注到一个比较有意思的话题,就是关于五个c语言的问题,于是小编就整理了2个相关介绍五个c语言的解答,让我们一起看看吧。
单片机除了可以用汇编和c语言编程,还有其他什么编程语言吗?
以一个业内近15年工作经验的人来解答:单片机派系众多,美系、日系、韩系、台系,还有现在的大陆系,各家使用的IDE各不相同。
对于非公版MCU来说,只有原厂对自家底层最熟悉,各种指令架构各种坑,只有自家的编译器才能正确解释,当然自家的汇编指令集是最高效的,各种停产各种升级,想要移植换片子,想起来就头大!
对于公版的如8051、ARM架构,繁衍出很多能够适配的第三方编译环境,如Keil、IAR等,使用C语言编辑,能够完全不用理会各种“bit宽度、BANK、Page”,不太了解指令架构也可以越过各种沟各种坑!
只要给的起钱,这些第三方的编译器都会尽量满足你,想要用什么语言来写,只要你高兴就好。未来python、JavaScript流行开来,这些也能免费适配。
总之不管用什么语言来编辑,能够简单高效的解析出硬件需求,实现产品所规划的功能才是一个程序员的价值所在。
现在主要还是c语言和汇编语言,这两个是当前底层系统必须的。未来可能会出现新的语言,现在也有在单片机上跑Python解释器然后用Python编写应用程序的,如micropython。也有JavaScript虚拟机的,然后使用J***aScript编写应用。这两个在单片机软件开发中还没成气候。
除了C和汇编,超子还接触过使用Arduino、Labview、Python以及Lua对单片机进行程序开发。不过这些相对比较小众,没有普适性。
Arduino应该算是一种对C和c++语言高度延伸的特有编程语言吧,因为其核心库是基于C和C++混合编写而成,提供给用户高度封装过的API接口。
其通常只针对于特定的Arduino环境的硬件开发板,通常是ATMEL公司的ATMEGA系列的8位或是32位的单片机。还有就是ESP8266也可以使用Arduino进行开发。
LabVIEW是由美国国家仪器(NI)公司研制开发的一种编程语言。它不同于C这种基于文本的编程语言,而是***用图形化编辑语言G编写程序。通过拖动控件,使用连接线连接各个控件,所有的数据都要基于数据流的模式。
使用LabVIEW可以对STM32单片机进行编程,当然这种还是比较小众,适合有一定Labview基础的人群。
C语言的编程环境有哪些?
一个完整的开发环境,包括文本编辑器、编译器/解释器、调试器、构建工具、以及图形用户界面等等。有的IDE包含了编译器/解释器,比如visual studio,Xcode,有的则是通过调用第三方编译器/解释器来实现,比如eclipse等等。
常见的文本编辑器
先来看看常见的文本编辑器,有编辑器之神vim,神之编辑器emacs领衔,这两款编辑器号称最好的编辑器,开源、免费、跨平台、扩展丰富,但是入门门槛比较高。
除了这两款以外,visual studio code,atom,ultredit,sublime text等等都是比较知名的文本编辑器,拥有非常好的交互界面,用户量也大,ultredit列模式非常强大,sublime text轻量级,但是扩展丰富。visual studio code和atom有大企业背书、支持,拥有很好的开源社区,并且非常现代化,非常。
常见的编译器
比较知名的编译器其实大家都接触到过,微软的MSVC编译体系,这个体系支持C/C++两种语言的编译,尤其是visual studio可以说是全世界最好的集成开发环境了,而visual studio是最好的C/C++开发环境。
GCC编译器,这个是目前最好的开源、并且完善的编译器,这也是在Linux/Unix下最好的编译环境,支持很多语言,并且已经相当成熟,是一套完善的通用解决方案。
LLVM+Clang,这是macOS下的一套解决方案,[_a***_]公司为了解决GCC臃肿的毛病,苹果公司的原开发总监Chris,也是swift语言之父一首打造的,非常出色,支持C/C++/Objective C++/swift等C系编程语言。
常见的调试器
UNIX及UNIX-like下的调试工具,也是目前最好的调试器。比起VC、BCB等IDE的调试,在 UNIX平台下做软件开发,GDB的优点是具有修复网络断点以及恢复链接等功能,比BCB的图形化调试器有更强大。
最后看一看比较出色的C语言集成开发环境
目前比较好的C语言集成开发环境,主要有visual studio,Xcode,Clion,codeblocks,devc++,netbeans等等都是非常好的C语言集成开发环境。当然个有特色,建议大家自己去下载使用、体验以下,看看自己更喜欢或者说那款软件用着更顺手。