【问题标题】:Difference between "void main" and "int main [duplicate]“void main”和“int main”之间的区别[重复]
【发布时间】:2015-09-30 10:55:40
【问题描述】:

我通过教科书和网站学习 C。示例代码在某处以“void main”开始程序执行,在某处以“int main”开始函数。有什么区别,真的吗?他们都给出了相同的结果。有什么使它们略有不同吗?如果有,请说明“void”是做什么的,以及“int”是做什么的。

【问题讨论】:

  • 谁否决了我的问题??为什么???
  • void 函数不返回任何内容,int 函数必须返回 int..
  • 这是返回类型的区别,如果你使用 int main 你会在关闭 main 函数之前返回整数值,但是当你使用 void 你不会返回任何东西。
  • 不,我没有复制任何问题。我刚给了我的。
  • "请提及“void”是做什么的,“int”是做什么的” 找一本 C 书或教程太难了?

标签: c


【解决方案1】:

int main()void main()都是一样的,都是程序的主进程。

void main() 这意味着函数 main() 没有返回值。

区别在于int main() 是调用它的唯一正确方法,因为每个程序在调用时都会返回操作系统解释的“错误消息”,在这种情况下,以返回 0 关闭程序;告诉调用你的程序的进程它没有问题地结束。

【讨论】:

  • 完美。对我有用。
  • 我已接受您的回答。 谢谢!!!
  • 嘿伙计们,你能投票给取消删除这个问题吗:stackoverflow.com/questions/31493309/…
  • 在 void main 中不需要使用 return。 '无效的主要(){}'。 void 表示无效。但是使用 int 意味着您应该返回一些 int 值。否则它将显示以下错误“函数期望返回一些值”..
【解决方案2】:

C 的 ANSI 标准规定主函数必须返回一个整数。但是,例如,如果您对嵌入式系统进行编程,那么您将使用void main。请将此问题详细说明:What should main() return in C and C++?

【讨论】:

  • 如果你没有添加关于嵌入式系统的那一行,我会投赞成票,因为它非常具有误导性。
  • 您能详细说明一下这件事吗??
  • @DevSolar 它是如何误导的?标准没有规定嵌入式系统上main的格式。
  • 实际相关 ISO标准是怎么说的?
  • @Olaf 取决于标准的哪个版本,如果是托管系统还是独立系统,see this
猜你喜欢
  • 1970-01-01
  • 2012-08-26
  • 2018-03-16
  • 2013-11-04
  • 2011-04-12
  • 2012-11-12
  • 2016-07-24
  • 2020-03-01
  • 2010-10-12
相关资源
最近更新 更多