欢迎来到皮皮网网首页

【ctf网站源码工具】【招聘求职网源码】【小程序挪车源码】winmain 源码

来源:xcode运行源码 时间:2024-11-23 15:41:17

1.winmain Դ?ctf网站源码工具?

winmain 源码

winmain Դ??

       ä½ å¯ä»¥ç…§äºŒæ¥¼çš„这样来理解,应该说基本这样理解不会耽误事的.而且比较好理解!

       ä½†æ˜¯ä½ çš„问题的确切答案不是这样的:

       ä¸ç®¡ä»€ä¹ˆæ ·çš„MAIN,在VC中编译的时候,实际上在MAIN的外层是还有东西的.你可以看下crt0.CPP的源代码.

       argc, argv等都是在crt0.cpp里实现,然后以ret = (main(argc, argv));开始调用main函数,当main用return时,ret就接受了这个return值.

       å› æ­¤å„种main(WinMain,wWinMain,wMain,Main)的外层是在crt0(C RunTime)这个C运行时库源代码文件中实现,且由连接器将它与我们的MAIN文件连接来生成最终的EXE文件.当双击EXE文件时,由操作系统的加载程序来把EXE加载到内存中,从通常的进程虚拟地址0X开始让CPU执行代码.

       å¦å¤–:如果你不研究操作系统的话,我想说你别去深究你的这个问题了,深究的话会牵出一大堆和操作系统有关的知识的,一时根本无法完全讲清楚.

       å›žç­”补充:

       å½“然能了。

       1)在命令提示符下:输入你的EXE文件名,然后一个空格,再输入随便什么字母。然后看下程序输出的是b. (EXE文件名可以看成是一个参数,因此argc为1,argv为NULL)

       2)用VC的话,看下工程属性里可以设置为程序传递的参数。(无法多说了,否则你可能又会有新的问题:为什么在VC工程属性里设置了参数就能传给MAIN(ARGC,ARGV)!)

       ä¸è¦å†æƒ³è¿™ä¸ªé—®é¢˜äº†ï¼Œä»¥ä½ çŽ°åœ¨çš„知识面没法理解,也不是几句话就能让你彻底明白的。

       é‰´äºŽä½ çš„水平,你贴问题的话还是在C/C++里贴吧,你的问题不属于VC++范畴。