如何更改程序的“主要”入口点?
#include int main(int argc, char *argv[]) { printf("%sn","Hello world!"); return 0; }
gcc -o entry_test -Wl,-eother entry_test.c
#include int other(void){//can't use argc, argv printf("Bye-Bye world!n"); return 0; } int main(int argc, char *argv[]){ printf("%sn","Hello world!"); return 0; }
如果你正在使用gcc,我发现一个线程说你可以使用-e命令行参数指定一个不同的入口点; 如BLUEPIXY所述,另见:
避免C程序中的主(入口点)
– 有关“-e”选项的更多详细信息,请参阅以下链接:
另一种方法是在链接器“启动”文件中更改启动函数。链接器可能包含一些文件中的一些预主启动代码,如start.o,这段代码运行以设置C环境然后调用main(如在所有嵌入式工具链中)。 没有什么可以阻止你用调用另一个函数的东西替换它。
这是启动文件的一个很好的解释:
嵌入式系统中的引导加载程序和启动代码是什么?
我投了这个问题,因为它对一些嵌入式c开发人员来说真的很有用。
以上就是c/c++开发分享更改入口点“main”相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/c-cdevelopment/522107.html