return在C语言中不是必须的。C语言中的函数定义分为函数入口和函数出口。当有入口参数或者出口参数时,需要说明参数的数据类型。如定义一个延时函数,入口参数为延时时间,延时后不需要返回参数。因此可以定义如下:void delayms(unsigned int T){...}void代表不需要返回值,也就是不需要使用return。unsigned int T代表入口参数。
你这个能编译过?那估计是编译环境不规范按照规范main应该是return int的,因为操作系统需要这个return值作为程序的返回码,以便确定程序是否正常结束。如果void main(不return int),可以调用exit(int)结束程序并返回int。估计void main无 exit返回0或者返回无效 追问 可是不写也可以编译成功啊 为什么还要浪费时间去写呢? 追答 规范可以遵守也可以不遵守,而且有时候先有某种实现,后出现协商的规范。比如VC6编译器,就不负荷C 0x++标准,因为它比标准先出现。为了通用,必须制定和遵守规范