请问main()起什么作用?
如果用c作os的话,还用她吗? 问题点数:100、回复次数:36Top
1 楼toking(涂金设计)回复于 2002-03-25 09:43:42 得分 0
main()
是主函数,每个程序都从它开始,是必不可少的!!Top
2 楼prototype(原型)回复于 2002-03-25 09:44:12 得分 0
'main()' is the starting point a c program.Top
3 楼jyc_nj(老蔣)回复于 2002-03-25 09:48:42 得分 0
程序看作系统的一个function调用,main就是入口。Top
4 楼nicholas_87(nicholas)回复于 2002-03-25 09:50:41 得分 0
main()
是主函数,每个程序都从它开始,是必不可少的!!
Top
5 楼scklotz(晓春)回复于 2002-03-25 09:52:33 得分 0
main,那只是 c 编译器包装的一个启动代码而已。Top
6 楼duanfeng(段玉)回复于 2002-03-25 09:58:48 得分 0
入口作用Top
7 楼giantzz(平庸无能的政府)回复于 2002-03-25 10:08:27 得分 0
作os的时候还用她吗?Top
8 楼lingg2002(无题)回复于 2002-03-25 10:21:17 得分 0
main相当于汇编中的什么Top
9 楼hello_wyq(半瓶墨水)回复于 2002-03-25 10:31:34 得分 0
做os的时候一般没有用,os的一般叫root。
os从root开始的。
Top
10 楼hello_wyq(半瓶墨水)回复于 2002-03-25 10:32:31 得分 0
补充一下,比如GCC它可以制定编译器从哪个地方加载。
Top
11 楼giantzz(平庸无能的政府)回复于 2002-03-25 10:43:36 得分 0
请详细解释一下,作os或其他需要在裸机上运行的程序的入口应从哪开始??谁去调用它???????Top
12 楼eagleyin(#define ME _NEWBIE_)回复于 2002-03-25 11:20:26 得分 100
CPU复位的时候,IP寄存器是固定指向某个位置的(在PC机中一般指向ROM内的系统自检和启动代码),然后这段代码又会去执行OS的启动代码(在PC中ROM中的代码会跑去检查磁盘的引导扇区,OS的启动代码一般放在那里),再然后,你的系统就起来了,呵呵Top
13 楼bbbbbb(进地)回复于 2002-03-25 11:34:43 得分 0
main()是应用于c源程序的最初入口,是整个你编写的程序的最初地址!你所说的用c作os只是c编译成的执行文件作os,与编译时的语法无关!Top
14 楼ywls(yw)回复于 2002-03-25 11:52:50 得分 0
程序的开始函数Top
15 楼lightning(lightning)回复于 2002-03-25 12:06:34 得分 0
入口可以由自己定义.main(),entry()...都可以.你还可以控制他们装载到哪个地址上.
打个比方,你可以一开机就让他到0x xxx xxx(main,entry...装载后的地址)
开始运行.Top
16 楼ProgrammerKing(狂焰)回复于 2002-03-25 13:09:35 得分 0
现在市场上有完全用C语言写的OS吗?
没有意义的事请你不要做!!!!!!!!!!!!!!
关于它的作用我认为上面些“同志”说已够多的了!!
值的体会!!!!!!!!!!!!!!Top
17 楼hajinshu()回复于 2002-03-25 15:53:24 得分 0
是主函数Top
18 楼callxuelin(进去什么,出来什么)回复于 2002-03-25 16:13:30 得分 0
程序编译时找他,编译原理中所谓的程序入口,
类似突出标识,实现快速编译Top
19 楼flyfreely(林雨亭)回复于 2002-03-25 19:12:53 得分 0
为什么不去看一看:
linux内核源代码,看完就清楚了。Top
20 楼zjlsct()回复于 2002-03-25 20:26:18 得分 0
接受操作系统出传来的参数,标志程序入口Top
21 楼LD520(不要)回复于 2002-03-25 21:19:36 得分 0
赞同bbbbbb(进地)的说法Top
22 楼kinghawk(惊鸿)回复于 2002-03-26 08:09:55 得分 0
main()可以理解为程序执行的向导(或导游),也就是说,程序在正式(记住,是正式)运行时,是按照它指定的顺序、方式来做的。
它要程序开始做加法,程序就开始做加法,让程序调用函数,程序就调用函数。
所以,只要是程序,就必须有且仅有一个main。
如果有两个,就想像你在一个完全不知道的地方同时有两个人向你指引两条不同的路时你会怎么办?
你在mfc中可能没有看到main,但它并不是没有,而是隐藏了。
有时main可以是winmain。Top
23 楼kangjian1(typer)回复于 2002-03-26 09:36:56 得分 0
我猜你是在单片机上开发整个系统吧?如果是这样,以下意见可能有用:
1。如果包括OS都是你自己写,管他什么main不main,
只要你愿意,用什么都行。
2。如果你在别人的OS上开发,比如winCE,你就要使用它所规定的方式,可能
是main。
Top
24 楼dy_paradise(小耳朵)回复于 2002-03-26 10:15:51 得分 0
main()就是程序的入口点呀~~~~ 一个程序就是从这里开始执行的~~~Top
25 楼poly30(POLY)回复于 2002-03-26 10:18:17 得分 0
main()是c规定的一个函数
它是程序的入口
如果是在windows下,你可以自己写WinMain()函数Top
26 楼dlgab(guoaibin)回复于 2002-03-26 10:40:37 得分 0
main入口作用。Top
27 楼azure711()回复于 2002-03-26 13:47:07 得分 0
操作系统与程序的接口Top
28 楼QSQ99(乡巴佬)回复于 2002-03-26 15:34:40 得分 0
main()是程序的入口
程序的执行就从它开始
可以称它为程序的入口点Top
29 楼anyiflyer(代码在我心中!)回复于 2002-03-26 16:02:15 得分 0
如果没有main(),你写的东西一点也不会被执行的!
它会缺省地被OS调用!是你的程序的入口!Top
30 楼audny(小狐狸)回复于 2002-03-27 11:20:50 得分 0
main是整个函数的头地址,这个问题说的够多了,上面的兄弟们讲得很明白,给分结单吧!Top
31 楼pilishine()回复于 2002-03-27 11:27:32 得分 0
程序的入口Top
32 楼MarkDong()回复于 2002-03-27 11:30:07 得分 0
做OS也可以做成带有main函数,编译为exe文件后,你需要用汇编自己做一个boot loader来加载你的exe文件。不过现在有很多这种boot loader是免费的。Top
33 楼igand(~~~~~~~~~~)回复于 2002-04-07 19:52:32 得分 0
没有main()就象没有头一样Top
34 楼sky_color(梦幻的笑容)回复于 2002-04-07 20:09:26 得分 0
反正没有它就是不行!和没啥别没钱一个理!呵呵。。Top
35 楼liyifan_2000_2001(好好学习)回复于 2002-04-07 20:21:17 得分 0
入口Top
36 楼gonglei2005(sicool)回复于 2002-04-07 21:02:18 得分 0
main()是操作系统的入口,每个c程序都的有就想是进家的门一样。Top
37 楼zhaoxiaoyang(梅雪香@深圳)回复于 2002-04-07 21:07:50 得分 0
不用也行,就象你回家,没有门Top




