3

我目前正在编写自己的编程语言,主要用于教育目的。

在编写一个简单的 hello world 示例时,我意识到许多编程语言采用以下形式:

write "hello world" to the console
return 0
  • 所有程序都必须以某种方式返回整数吗?
  • 那些没有明确要求您声明返回值的人是否仍然隐式返回 0?
  • 这会在基于 Windows NT、Linux 内核或 Mac OS Xs 内核的流行操作系统之间发生变化吗?
  • 如果是这样,为什么?

我不确定将这个问题标记为什么,当然感谢任何帮助。

4

1 回答 1

1

这是一个特定于操作系统的问题,所以没有人可以回答是否适用于所有操作系统。也就是说,我相信,在任何合理的操作系统中,是的——程序必须有一个返回值。

为什么?链接程序执行,从而报告问题、重新启动等。没有不返回值的程序,它只是一个对程序员隐藏它的编译器。

在所有主要操作系统上都是这种情况吗?大概。0 通常意味着成功,但你在编写程序时不应该做出这样的假设;使用语言常量。

如果您编写自己的语言,您可以将错误代码(异常、终止原因)映射到宿主语言的错误代码。

于 2014-02-18T02:03:16.693 回答