避免 C 程序中的 main(入口点)

2024-01-10

是否可以避免 C 程序中的入口点(主)。在下面的代码中,是否可以调用func()无需通过以下方式拨打电话main()在下面的程序中?如果是,如何做、何时需要以及为什么给出这样的规定?

int func(void)
{
     printf("This is func \n");
     return 0;
}

int main(void)
{
     printf("This is main \n");
     return 0;
}

如果您使用 gcc,我发现一个线程说您可以使用-e命令行参数 http://gcc.gnu.org/ml/gcc/2001-06/msg01959.html指定不同的入口点;所以你可以使用func作为你的入口点,这将离开main unused.

请注意,这实际上并不让您调用另一个例程而不是main。相反,它允许您调用另一个例程而不是_start,这是 libc 启动例程——它做了一些设置,然后it calls main。因此,如果这样做,您将丢失运行时库中内置的一些初始化代码,其中可能包括解析命令行参数之类的内容。使用此参数之前请先阅读该参数。

如果您使用其他编译器,则可能有也可能没有参数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

避免 C 程序中的 main(入口点) 的相关文章

随机推荐

  • Java 8 中 MetaSpace 有什么用?

    我知道他们在 Java 8 中用 MetaSpace 取代了 PermGen 但我有几个问题 MetaSpace默认是GC收集的吗 甚至 PermGen 也是通过添加参数进行 GC 收集的 例如 XX CMSClassUnloadingEn
  • CSS 不透明度动画 Safari 错误?

    我有一个简单的动画 本例中仅适用于 Safari h1 webkit animation moveDown 1s ease in out webkit keyframes moveDown 0 webkit transform transl
  • 单击 Activity 上的其他位置时如何使 SearchView 失去焦点并折叠

    在我的应用程序中 我正在制作一个搜索界面 http developer android com training search setup html其中SearchView当它失去焦点和获得焦点时分别会折叠和扩展 然而 失去焦点的情况只发生
  • 无法使用 ChromeDriver 下载文件

    我正在使用 chromedriver 和 selenium 从应用程序下载文件 但是 当单击应用程序中的下载按钮时 它给出错误 Failed Download error Chrome 驱动程序版本 2 21 硒版本 2 53 0 用于初始
  • 如何在html中设置输入类型=文件的样式? [复制]

    这个问题在这里已经有答案了 我做了一些研究 发现很难设计输入类型 文件的样式 然而 我意识到当您想要将视频上传到该网站时 YouTube 会显示一个漂亮的按钮 可能需要登录 http www youtube com upload http
  • 如何使用 docx4j 读取 Word 文档并获取其中所有样式的部分

    我正在使用 docx4j 来处理 Word 文档格式 我有一个word文档 它分为多个表格 我想阅读所有表格 如果我找到一些关键字 那么我想将这些内容转移到另一个具有所有格式的 Word 文档中 我的word文档如下 就像上面一样 我想获取
  • NSPredicate 用于检测子查询中的非空关系

    给定核心数据实体设置如下 Entity A Bs gt B 多对多 Cs gt C 多对多 孩子 gt 孩子 多对多 Entity B 孩子 gt 孩子 多对多 Entity C 孩子 gt 孩子 多对多 Child date 我想要查询实
  • 如何扩展JavaDoc 5.0标准doclet?

    我想扩展Javadoc5 0提供的标准doclet来修改其HTML输出 例如 当关键字 implemented 或 Interfaces 出现在生成的 JavaDoc HTML 中时 我想将其替换为另一个单词 所有其他元素不应更改 我怎样才
  • 使用 Python 2.7 从 Excel 导入 MySQL 表

    我正在尝试将此 Excel 工作表中的数据插入到 MySQL 表中 https www dropbox com s w7m282386t08xk3 GA xlsx dl 0 https www dropbox com s w7m282386
  • iOS 长时间运行使用 GCD 或 NSThread?

    我是 iOS 开发新手 我最熟悉 Java 我想知道启动长时间运行的线程的最佳方法是什么 只要应用程序位于前台 该线程就会启动 并在进入后台时停止 当它位于前台时 它将每隔 X 秒轮询一次外部设备以查看其是否已连接 NSThread 与 J
  • “virtual const char* ro_err::StdErr::what() const”的更宽松的抛出说明符

    这是我的完整代码 https gist github com bd44e03153a499a0de62 我自定义异常 例如 class StdErr public std exception public str msg StdErr st
  • 为什么 FileReader 不将文件传递给 Three.js 场景使用的 loader.load() ?

    我正在尝试使用 FileReader 将客户端 ASCII 文件传递 给 loader load 但看起来该文件永远不会到达那里 如果我使用 该文件确实会出现在 3D 场景中loader load server path to test f
  • 如何像 CNN 应用程序一样在 UITableView 上扩展图像

    我有在我的 iPhone 上 如果你打开它 它会显示 头条新闻 并且总是在桌子的顶部有一张图片 当我们向下滑动手指时 它会放大 缩放图像 当我们向上滑动手指以显示更多行时 它不会以与表格行相同的速度向上移动图像 而是表格行的移动速度比屏幕上
  • 不要删除 kable 函数中的空格 - 举例

    我正在汇总数据并在 Shiny 应用程序中创建一个表 我的基本问题是 我想在连接字符串的元素之间添加一些额外的空格 以便它更具可读性 但添加的空格似乎消失了 我认为paste 函数在 符号周围适当地添加了额外的空格 但是使用kable或ka
  • ExtJs继承行为

    有人可以向我解释一下这种行为吗 让我们声明一个类 Ext define baseClass a null ar add function v this ar push v sayAr function console log this ar
  • 在集合之间移动文档是表示 MongoDB 中状态变化的好方法吗?

    我有两个收藏 一个 A 包含要处理的物品 相对较小 和一个 B 与那些已经处理过的 相当大 有额外的结果字段 项目读取自A 得到处理并保存 到B 然后从A 其基本原理是 这些索引之间的索引可以不同 并且 传入 集合可以通过这种方式保持非常小
  • Android Wear 中的 SurfaceView (API 21)

    我想在 Android Wear 项目中使用 SurfaceView 来渲染视差背景 请参阅随附的屏幕截图 问题 SurfaceView 在大约 1000 毫秒后消失 但汽车仍然存在 因此黑色背景上有一辆粉红色的汽车 SurfaceView
  • 当从 Java GUI 中删除记录时,记录没有从 MySQL 数据库的表中删除?

    编辑问题 当我单击删除按钮时 表中的行将在 GUI 中删除 但不会从 mysql 服务器的数据库中删除 这是代码 数据库存储 这部分运行良好 public class DatabaseStore private final String s
  • d3.js:垂直移动线与折线图的交点

    我正在使用 d3 库来绘制线图 以下是我生成折线图的代码
  • 避免 C 程序中的 main(入口点)

    是否可以避免 C 程序中的入口点 主 在下面的代码中 是否可以调用func 无需通过以下方式拨打电话main 在下面的程序中 如果是 如何做 何时需要以及为什么给出这样的规定 int func void printf This is fun