单片机编程和c语言编程有啥区别,是不是只有头文件有点差别

如题所述

两者有本质的区别:
1)单片机编程是针对单片机的编程操作,常用的51、AVR、STM32等单片机都支持C语言,但是有很多ROM和RAM都很小的单片机一般只支持汇编语言。同时由于不同内核单片机的架构区别较大,厂家都会对标准C语言进行适当扩充,这样就导致不同内核单片机的C语言之间存在一些别,移植的时候就不仅仅是更改一下头文件那么简单了。
2)C语言是一门特定的程序语言,它有一套严格的规范,不同编译器可以有不同的实现算法,但必须符合C语言的语法规则,如DEV-CPP、VC、GCC、TC这些比较流行的软件都提供了C语言的编译器。
3)学习单片机编程不一定要学习C语言,但必须学习单片机的系统组成,只有熟悉它的内部结构才能熟练地使用它,但由于C语言比较接近自然语言,比汇编语言易于理解,有利于程序编写和代码维护,然而由于编译器优化的程度不一样,有时候会占用额外的ROM和RAM,所以对于小容量单片机很多人更倾向于汇编语言。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-01
差别很大好吧。单片机基本等同于硬件编程了,纯底层的语言;C语言可是做软件的,可以写客户端程序的。追问

能具体说说吗?

能具体说说吗?

追答

没法具体说,具体资料你可以去自己百度百科,自己研究。
简单来说,用单片机写的程序,是服务于硬件的,不是直接面向用户的。C语言编程,是直接做应用的,可以直接面向用户,电脑系统和许多软件基本都是C语言写的。

本回答被提问者采纳