gpt4 book ai didi

c - 新旧 Unix 编译器之间的差异?

转载 作者:太空宇宙 更新时间:2023-11-04 02:02:23 25 4
gpt4 key购买 nike

我正在阅读“Dennis Ritchie 的 C 编程语言”,并且在一开始它演示了一个代码,即以下

#include<stdio.h>
main()
{
printf("Hello, World");
}

根据本书,这段代码应该可以正常工作。但是,当我编译这段代码时,它会生成一个错误,要求我将主要返回类型指定为“int”类型。即使让它无效也会产生编译错误。这是为什么?这真的很烦我。我认为既然这本书是由语言的创造者创作的,那么它应该是准确的,但我想不是......

我在 Unix FreeBSD 10.0 上运行它

最佳答案

那本书是几十年前写的,从那以后语言发生了很大变化。

即使是包含 ANSI C(前身是 K&R)的版本也已经过时了。它涵盖了 C89/90,我们现在有了 C99 和 C11。

很可能有编译器使用旧版本的标准(例如某些嵌入式系统),但使用的编译器不是这种情况,至少您使用的选项是这样有。

如果你想学习当前的语言,我建议你选择一本更新的书。

关于c - 新旧 Unix 编译器之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25577674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com