GNU官网惊爆谭氏C代码
Tofloor
poster avatar
xliang9550
deepin
2015-10-10 18:50
Author
有图有真相:
Reply Favorite View the author
All Replies
Feng Yu
deepin
2015-10-10 19:11
#1
印象中老谭的书应该是main()
Reply View the author
SnDream
deepin
2015-10-10 19:27
#2
看网址 这不是fun/jokes里面的吗?
Reply View the author
176******07
deepin
2015-10-10 21:35
#3
对啊,fun/jokes下的,都是用来当笑话看的嘛
Reply View the author
hummerstudio
deepin
2015-10-11 02:03
#4
这个本来就是合语法的,没太大问题。联系上下文来看,我觉得笑点应该是各年级教学的编程语言的变化。
Reply View the author
xliang9550
deepin
2015-10-11 07:29
#5
关于main()函数,经典C的写法是main(),追求极致简洁
从C89开始建议显式给出返回类型和参数列表,直到C99强制要求如此做。
查阅C99标准,main()函数头可以有两种写法:
int main(void)
int main(int argc, char** argv)
从来没有过void类型的main()函数存在于C标准中
另外下面的字符指针数组初始化式在经典C中可能不行,所以我还是以标准C来看待这段代码。
Reply View the author
yuxiangnier
deepin
2015-10-12 00:07
#6
大学课程N年不变一次,能编译过就行了.不要那么纠结,void main(void)这种写法主要还是出现在win下VC编译器中,linux下一直都是int main(int argc, char * argv[])这类的.
Reply View the author
xliang9550
deepin
2015-10-12 05:03
#7
C++标准可以接受void类型的main(),但是C标准不可以。之所以用VC编译可能不报警,也许是把它当成C++程序了。
但是,既然能按照C标准去做,何乐而不为?
还有个梗:为了满足经典C程序员对“简洁”的执著,main()函数可以省略最后的return 0;,当main()函数体正常执行完毕后会自动返回0给操作系统。
这样一来,int main()不仅完全符合C标准,而且比void main()还可以少输入一个字母……
Reply View the author
181******81
deepin
2015-10-13 00:01
#8
https://bbs.deepin.org/post/32731
大学课程N年不变一次,能编译过就行了.不要那么纠结,void main(void)这种写法主要还是出现在win下VC编译 ...

你的这种编译过了就算的想法、看法。在你个人完成的项目里,可能会觉得美所谓。但是在团队里,你可能将会成为很大的阻碍。团队里语法的不标准和不统一那绝对都是让人崩溃。。。。特别是出问题的时候。
Reply View the author
xliang9550
deepin
2015-10-13 06:10
#9
我们本地社区曾经讨论过这样一个梗:
假设在不远的将来,中美在太平洋发生冲突。
中国军方使用的计算机软件系统的开发者当初是学习谭氏《C程序设计》入门的。
双方主力舰队开战之时,中国的核动力航母的反应堆控制程序发生了未定义行为……
Reply View the author
la******[email protected]
deepin
2015-10-13 09:36
#10
為什麼那個陣列要加指標?
Reply View the author
LouieVV
deepin
2015-10-13 22:53
#11
几年不玩C,基本不会了
Reply View the author
xliang9550
deepin
2015-10-13 23:54
#12
回12楼,学而时习之,不亦说(悦)乎?
——《论语》
Reply View the author
yuxiangnier
deepin
2015-10-14 08:33
#13
https://bbs.deepin.org/post/32731
你的这种编译过了就算的想法、看法。在你个人完成的项目里,可能会觉得美所谓。但是在团队里,你可能将会 ...

我指大学,还有就是对于纯C而言,主要还是那些嵌入式程序员用得多,对一些应用层的程序员来讲,主要还是以解决问题为主,语法规则是要有,但要看本公司对语言是宽松程序而定,当前不光是我,我相信有很多人跟我一样,代码一大抄,这个原因大家都懂的,永远不变的是变化,在业务需要不断增加的,每天没日没夜的加班的同时还要去想是89或99标准吗?大家都是为了生存不是吗?在公司的语言规范中也不是因为你个人发现什么就能往里加的,要经过团队和已经成型的案例得出来的结果.
Reply View the author
xliang9550
deepin
2015-10-14 18:14
#14
如果严格按照ISO C标准来写代码,也许能够事半功倍,特别是查错的时候——我的经验。
很多常见的bug来源于对基本概念的错误理解,而这些错误概念大多来自《C程序设计》,并且被多数国产C语言教材一遍又一遍地重复。
Reply View the author
New Thread

Popular Events

More
国际排名
WHLUG