免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: whelysee
打印 上一主题 下一主题

[C] 谭浩强的书我就不说什么了,居然教学生include一个.c文件 [复制链接]

论坛徽章:
24
金牛座
日期:2013-10-18 21:35:56综合交流区版块每日发帖之星
日期:2015-08-15 06:20:00综合交流区版块每日发帖之星
日期:2015-09-30 06:20:00综合交流区版块每日发帖之星
日期:2015-10-16 06:20:03每日论坛发贴之星
日期:2015-10-16 06:20:03综合交流区版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之天津
日期:2016-02-25 16:28:04综合交流区版块每日发帖之星
日期:2016-06-12 06:20:00每日论坛发贴之星
日期:2016-06-12 06:20:00综合交流区版块每日发帖之星
日期:2016-06-13 06:20:00综合交流区版块每日发帖之星
日期:2015-06-22 22:20:00
41 [报告]
发表于 2009-10-27 15:08 |只看该作者
原帖由 shan_ghost 于 2009-10-27 15:05 发表


把一个大的.c文件拆成若干小的 .share 文件,然后 include xxx.share 行不行?

你们谭派弟子就是想标新立异,也换个不那么容易令人混淆的方式行不?

咬文嚼字有意思么?
你的.share和我说的.c在含义上有什么不同?
实际上,我可能更多地用.inc。

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:49:45
42 [报告]
发表于 2009-10-27 15:09 |只看该作者
原帖由 一介村夫 于 2009-10-27 14:42 发表

你以为头文件里不写,动态库里的函数就不可见了?
掩耳盗铃!


你以为动态库里看不见就把函数的机器码搞不出来啊

论坛徽章:
8
CU大牛徽章
日期:2013-04-17 10:59:39CU大牛徽章
日期:2013-04-17 11:01:45CU大牛徽章
日期:2013-04-17 11:02:15CU大牛徽章
日期:2013-04-17 11:02:36CU大牛徽章
日期:2013-04-17 11:02:58技术图书徽章
日期:2013-12-04 10:48:50酉鸡
日期:2014-01-03 10:32:30辰龙
日期:2014-03-06 15:04:07
43 [报告]
发表于 2009-10-27 15:10 |只看该作者
原帖由 albcamus 于 2009-10-27 14:45 发表
include .c是极其丑陋的编码风格, C允许这样做,是完全多余的。


扩展名毫无意义,仅仅是一个约定而已。


这和《设计模式》开宗明义所谈论的东西一样: 俩木匠讨论怎么结合两块木材,他们会顺口说出几种不同的“接榫”;一旦接榫名字确定,尺寸确定,那么别的什么废话都不用说了。


.c .h就是一种最基础的接榫设计。
和其他模式不同,这种设计没有任何副作用——除了不能阻止那些一知半解、标新立异的、发现 include xxx.c 居然也能工作便以为发现了技术新大陆的谭派弟子搞破坏以外。

这和所谓匈牙利命名法以及其他很多命名约定、编程规范一样。你遵守了,习惯了,不会带来任何负担,却让你和其他程序员有了共同语言。


所谓在.h中include、在.c中include的差别;内部头文件和公开头文件的区别,那些连最基本的.c .h规定都不想遵守的谭派弟子,怎么可能理解。

论坛徽章:
24
金牛座
日期:2013-10-18 21:35:56综合交流区版块每日发帖之星
日期:2015-08-15 06:20:00综合交流区版块每日发帖之星
日期:2015-09-30 06:20:00综合交流区版块每日发帖之星
日期:2015-10-16 06:20:03每日论坛发贴之星
日期:2015-10-16 06:20:03综合交流区版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之天津
日期:2016-02-25 16:28:04综合交流区版块每日发帖之星
日期:2016-06-12 06:20:00每日论坛发贴之星
日期:2016-06-12 06:20:00综合交流区版块每日发帖之星
日期:2016-06-13 06:20:00综合交流区版块每日发帖之星
日期:2015-06-22 22:20:00
44 [报告]
发表于 2009-10-27 15:11 |只看该作者
原来C语言的设计者和标准制定者们都不如本版的大牛们脑子清楚见多识广。
别忘了,存在即是合理,存在的东西总有它存在的道理,不是人家的疏漏,而是你自己站得还不够高。

论坛徽章:
24
金牛座
日期:2013-10-18 21:35:56综合交流区版块每日发帖之星
日期:2015-08-15 06:20:00综合交流区版块每日发帖之星
日期:2015-09-30 06:20:00综合交流区版块每日发帖之星
日期:2015-10-16 06:20:03每日论坛发贴之星
日期:2015-10-16 06:20:03综合交流区版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之天津
日期:2016-02-25 16:28:04综合交流区版块每日发帖之星
日期:2016-06-12 06:20:00每日论坛发贴之星
日期:2016-06-12 06:20:00综合交流区版块每日发帖之星
日期:2016-06-13 06:20:00综合交流区版块每日发帖之星
日期:2015-06-22 22:20:00
45 [报告]
发表于 2009-10-27 15:12 |只看该作者
原帖由 koolcoy 于 2009-10-27 15:09 发表


你以为动态库里看不见就把函数的机器码搞不出来啊

我说的是连接的时候不会给用户带来困扰。
好好读帖!

论坛徽章:
8
CU大牛徽章
日期:2013-04-17 10:59:39CU大牛徽章
日期:2013-04-17 11:01:45CU大牛徽章
日期:2013-04-17 11:02:15CU大牛徽章
日期:2013-04-17 11:02:36CU大牛徽章
日期:2013-04-17 11:02:58技术图书徽章
日期:2013-12-04 10:48:50酉鸡
日期:2014-01-03 10:32:30辰龙
日期:2014-03-06 15:04:07
46 [报告]
发表于 2009-10-27 15:14 |只看该作者
原帖由 一介村夫 于 2009-10-27 15:08 发表

咬文嚼字有意思么?
你的.share和我说的.c在含义上有什么不同?
实际上,我可能更多地用.inc。


那么,这种.c/.share/.inc,又和带实现的.h有什么不同?

遵守下方便自己也方便大家的通用约定,真的那么难么?

[ 本帖最后由 shan_ghost 于 2009-10-27 15:17 编辑 ]

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:49:45
47 [报告]
发表于 2009-10-27 15:15 |只看该作者
原帖由 一介村夫 于 2009-10-27 15:12 发表

我说的是连接的时候不会给用户带来困扰。
好好读帖!

加前缀会吗?

论坛徽章:
24
金牛座
日期:2013-10-18 21:35:56综合交流区版块每日发帖之星
日期:2015-08-15 06:20:00综合交流区版块每日发帖之星
日期:2015-09-30 06:20:00综合交流区版块每日发帖之星
日期:2015-10-16 06:20:03每日论坛发贴之星
日期:2015-10-16 06:20:03综合交流区版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之天津
日期:2016-02-25 16:28:04综合交流区版块每日发帖之星
日期:2016-06-12 06:20:00每日论坛发贴之星
日期:2016-06-12 06:20:00综合交流区版块每日发帖之星
日期:2016-06-13 06:20:00综合交流区版块每日发帖之星
日期:2015-06-22 22:20:00
48 [报告]
发表于 2009-10-27 15:16 |只看该作者
原帖由 shan_ghost 于 2009-10-27 15:14 发表


那么,这种.c/.share/.inc,又和带实现的.h有什么不同?

扩展名用.c,在有些编辑器下可以自动语法高亮,这就是好处。

论坛徽章:
24
金牛座
日期:2013-10-18 21:35:56综合交流区版块每日发帖之星
日期:2015-08-15 06:20:00综合交流区版块每日发帖之星
日期:2015-09-30 06:20:00综合交流区版块每日发帖之星
日期:2015-10-16 06:20:03每日论坛发贴之星
日期:2015-10-16 06:20:03综合交流区版块每日发帖之星
日期:2015-10-24 06:20:00IT运维版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之天津
日期:2016-02-25 16:28:04综合交流区版块每日发帖之星
日期:2016-06-12 06:20:00每日论坛发贴之星
日期:2016-06-12 06:20:00综合交流区版块每日发帖之星
日期:2016-06-13 06:20:00综合交流区版块每日发帖之星
日期:2015-06-22 22:20:00
49 [报告]
发表于 2009-10-27 15:16 |只看该作者
原帖由 koolcoy 于 2009-10-27 15:15 发表

加前缀会吗?

你能保证你加完前缀后就能不跟任何函数库里的所有函数重名吗?

论坛徽章:
8
CU大牛徽章
日期:2013-04-17 10:59:39CU大牛徽章
日期:2013-04-17 11:01:45CU大牛徽章
日期:2013-04-17 11:02:15CU大牛徽章
日期:2013-04-17 11:02:36CU大牛徽章
日期:2013-04-17 11:02:58技术图书徽章
日期:2013-12-04 10:48:50酉鸡
日期:2014-01-03 10:32:30辰龙
日期:2014-03-06 15:04:07
50 [报告]
发表于 2009-10-27 15:18 |只看该作者
原帖由 一介村夫 于 2009-10-27 15:16 发表

扩展名用.c,在有些编辑器下可以自动语法高亮,这就是好处。


扩展名用.h,在有些可以自动语法高亮.c扩展名文件的编辑器下面一样可以语法高亮,而且还遵守了程序界的基本道德,这更是好处。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP