单片机编程和平时c语言编程的区别

我看到单片机程序都不是用的c99标准

主函数是void main(){...}
这样的 也就是没有return 0;这个语句
所以单片机运行到这步会怎么样?

还有就是一般声明变量的时候都是声明的外部变量
这有什么好处么?

单片机的主程序要在一个循环体内才可以保证单片机稳定的运行,所以禁止出现return这个东东的在主程序中,你可能看过很多单片机程序,如果之前一直前行,到最后至少都会有一个while(1);来结束,就是将程序稳定在这个地方,以保证之前程序的“成果”。如果没有这个,程序就从此不受控而乱了。
申明变量时并不是都声明为外部变量,只有需要时才会如此声明的。追问

可是c99规定main函数返回值必须是int的呀

追答

当然你也可以加int,这样语法上也不会出错,你return 0时相当于单片机程序勇往直前而已,最终结果是跑飞而已。

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-03-07
在main主函数中都有一个while语句进行循环,结果表现在单片机上,比如流水灯。单片机编程主要是与硬件结合,一般不需要返回值
至于声明变量的时候都是声明的外部变量,我同意楼上说法,根据需要去写。
第2个回答  2015-10-25
1、单片机中C的语法一般都对 ANSI C有些扩展,及一些特殊写法 如C51扩展的 data xdata bit sbit 一类的,还有一些中断程序写法 void int() interrput 1 一类的。
2、C是一门语言,由对应平台的编译器编译成对应平台汇编的程序,各平台的汇编不一样,当然编译器也不一样 DOS上的TC2 TC3 WINDOWS上的VC 8051的C51都有自已的编译器 具体区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。
第3个回答  2014-03-07
void main 这种写法很常见,但是在有些编译器上通不过,它要求必须有返回值,但有些编译器没之歌要求,大家就用void了, 在单片机的main函数里,一般会有一个大的死循环,初始化完成后就在这个死循环里运行,所以一般不会到return这

至于声明外部变量,这个我认为你的意思是定义变量吧,而不是声明变量。定义局部变量和外部变量根据需要而定,这个不是死的

其实 只有外部变量需要声明,局部变量不需要的,注意这里的声明不是定义,要能区分变量声明和变量定义的区别追问

可是c99规定main函数返回值必须是int的呀

第4个回答  2014-03-07
没区别啊。

c语言与单片机c语言的区别急求
C语言与单片机C语言的区别:一、通用性与专用性 C语言是一种通用的编程语言,广泛应用于各种领域,包括桌面应用、网页开发、嵌入式系统等。而单片机C语言更偏向于在嵌入式系统中的应用,特别是针对单片机的编程。单片机C语言具有更强的针对性和专用性,它更多地关注与硬件直接交互的特性和功能。二、硬件关...

单片机编程和c语言编程有啥区别,是不是只有头文件有点差别
两者有本质的区别:1)单片机编程是针对单片机的编程操作,常用的51、AVR、STM32等单片机都支持C语言,但是有很多ROM和RAM都很小的单片机一般只支持汇编语言。同时由于不同内核单片机的架构区别较大,厂家都会对标准C语言进行适当扩充,这样就导致不同内核单片机的C语言之间存在一些别,移植的时候就不仅仅是...

单片机里的C语言和电脑上编程的C语言是一种语言吗
尽管单片机C语言和电脑上编程的C语言都是C语言,但它们的实现方式和运行环境有显著区别。单片机C语言主要应用于嵌入式系统,注重低功耗、低成本和高可靠性,而电脑上的C语言则侧重于开发高性能的应用程序。目前,C\/C++是最流行的单片机\/微处理器编程语言。这两种语言拥有丰富的库函数和强大的性能,使得开...

单片机编程和平时c语言编程的区别
单片机的主程序要在一个循环体内才可以保证单片机稳定的运行,所以禁止出现return这个东东的在主程序中,你可能看过很多单片机程序,如果之前一直前行,到最后至少都会有一个while(1);来结束,就是将程序稳定在这个地方,以保证之前程序的“成果”。如果没有这个,程序就从此不受控而乱了。申明变量时并不是...

单片机的c语言编程和c语言有什么区别,我学过一点c语言,不过看单片机...
单片机的C语言于C语言没有什么区别,只是传到单片机里的时候,要把C语言编译为hex文件才行。

C语言与单片机C语言的区别 急求
2、C是一门语言,由对应平台的编译器编译成对应平台汇编的程序,各平台的汇编不一样,当然编译器也不一样DOS上的TC2TC3 WINDOWS上的VC8051的C51都有自已的编译器。具体区别是由编译器决的,只能参考对应的编译手册,即使同种平台不同的编译器对C的扩展也有不同。3、单片机c语言编程是基于C语言的单片机...

单片机编程和PC机上的汇编C语言编程有什么区别
基本一样,不过单片机上多了很多细致的地方。比如说MOV又分为MOVX和MOVC,JMP又分为AJMP和LJMP等等 个人觉得单片机上的汇编比PC机上的难点

C语言与单片机C语言的区别是什么?
C只是一种高级语言。它除具有一般高级语言的功能特性外,它可以很好的操作底层的硬件接口。在C语言的基础上,如果你把一些单片机的端口或特殊功能寄存器加于定义,使之方便于在 写语句的时候,直接直观的编写。这样就差不多是单片机C语言。而C语言的特性差不多都可以用于单片机C语言,因为它们的编译机理...

单片机编程和"一般编程"区别???
1、单片机与的程序设计有很大的区别,单片机的全部程序都是用户设计的,PLC的程序包括系统程序(西门子称为操作系统)和用户程序。操作系统用来组织与具体的控制任务无关的所有的CPU功能。操作系统的任务包括处理启动过程,刷新输入\/输出过程映像,调用用户程序,检测中断事件和调用中断组织块,检测和处理错误,...

单片机C语言和标准C语言的差别??
语法一样,编译器不同 单片机针对自己的芯片来编译,标准C一般都指在PC机上进行的,说白了也就是函数库不同 学标准C就看看《C primer》,谭浩强的《C程序设计》入门也不错的,不过他的书内容不怎么全 单片机的你就看你想学的型号了,MCS-51 MCS-96 凌阳……都不同的 最好先看标准C,然后转...

相似回答