C51什么把主函数放在最后

[复制链接]
4540|16
 楼主| jack.king 发表于 2007-7-6 18:35 | 显示全部楼层 |阅读模式

   C51里面为什么要主函数放在最后  并且所有要调用的函数都要放到前面
wjy1107 发表于 2007-7-6 18:39 | 显示全部楼层

不需要重复声明啦

xwj 发表于 2007-7-6 19:09 | 显示全部楼层

那就不用事先声明了,但不建议这样做

hotpower 发表于 2007-7-6 19:23 | 显示全部楼层

也是一种习惯吧,除main()外的函数声明是个好习惯

 楼主| jack.king 发表于 2007-7-6 20:16 | 显示全部楼层

谢谢知道了!MOV DPTR,#40H MOVX A,@DPTR用C语言怎么写

 MOV DPTR,#40H MOVX A,@DPTR用C语言怎么写
xwj 发表于 2007-7-6 21:39 | 显示全部楼层

提示:用指针

自己去想想吧
 楼主| jack.king 发表于 2007-7-6 22:55 | 显示全部楼层

想到了

想到了  
   只是需要区分  DATA 和XDATA的用法
gyt 发表于 2007-7-6 23:05 | 显示全部楼层

还是把所有的其他函数都声明一下比较好:)

 楼主| jack.king 发表于 2007-7-6 23:12 | 显示全部楼层

RE

 谢谢
  若有些函数没有那我还要自己编写是不?
   因为我发现没有INTRINS.H
  这个要自己写吧!
H0TPOVVER 发表于 2007-7-6 23:19 | 显示全部楼层

&P=0x40; *P=ACC?

lluct 发表于 2007-7-7 08:53 | 显示全部楼层

不会吧?

我一般分3段

子程序声明

main函数

子程序

 楼主| jack.king 发表于 2007-7-7 13:59 | 显示全部楼层

code还是用data

    各位大哥!若要访问单片机内部的EEPROM在C51中应该怎么定义指针啊!是code还是DATA为什么呢?
chunyang 发表于 2007-7-7 15:57 | 显示全部楼层

这是PLM语言的限制所致

    PLM语言本身因编译器的技术限制,无法支持主函数位置任意放置和子程序/函数的任意调用方向,这是程序的约束条件,而PLM是早期的工业标准,C51推出时必须兼容这种标准(见任何公司出品的各版本C51编译程序中有关与PLM51兼容的声明,包括Keil)才能生存和发展,所以不得不“引入”PLM51的一些特性和约束,以保证二者编译结果的兼容,自然也就包括进了这种限制。虽然后来的C51可以突破这种限制,但习惯如此,PLM51在国外作为工业标准的影响是很大的,就像DOS对现在的Windows的影响和限制类似。
nana724 发表于 2007-7-7 15:58 | 显示全部楼层

C语言不也这样吗?我觉得是习惯

未名小生 发表于 2007-7-7 23:36 | 显示全部楼层

好像我是放在最前面的。。。
zhufp 发表于 2007-7-8 08:44 | 显示全部楼层

看来楼主没有好好的看过C程序的教材

 楼主| jack.king 发表于 2007-7-8 09:38 | 显示全部楼层

呵呵

   那是的!我开始一直用汇编编写近来用C来有很多东西不会啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

488

主题

2158

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部