免费注册 查看新帖 |

Chinaunix

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

[C] C语言中函数重定义的问题 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2007-05-10 20:49 |只看该作者
原帖由 nnnqpnnn 于 2007-5-10 17:08 发表
take a.h as example:

#ifndef A_H
#define A_H
void a(int);
...............
#endif

谢谢你的回复,这个还能看的懂一点,我去试试,哈哈

论坛徽章:
0
12 [报告]
发表于 2007-05-10 20:51 |只看该作者
原帖由 pineapple1175 于 2007-5-10 20:44 发表

是在搞不懂为什么不把函数定义在头文件当中


通常的做法是,把声明写在头部,而将定义写在正文里。

参考:
声明——declaration  (n.)
定义——definition  (n.)

.

论坛徽章:
0
13 [报告]
发表于 2007-05-10 20:52 |只看该作者
原帖由 pineapple1175 于 2007-5-10 20:47 发表

首先谢谢你的回复,我对#ifndef用法不是非常的熟悉,按照你的写法  _A_H_A_H和_B_H又是定义在哪里的??

不好意思,是我错了,参考我楼上,如果没有定义就定义一个

论坛徽章:
0
14 [报告]
发表于 2007-05-10 20:56 |只看该作者
还问下各位,在VC下C++可以一个.h文件对应一个.cpp的文件,在linux下不知道一个.h文件能不能对应一个.c文件,就是函数申明放.h头文件函数定义(实现)放.c文件中??

论坛徽章:
0
15 [报告]
发表于 2007-05-10 20:57 |只看该作者
原帖由 langue 于 2007-5-10 20:51 发表


通常的做法是,把声明写在头部,而将定义写在正文里。

参考:
声明——declaration  (n.)
定义——definition  (n.)

.

这个我知道,你的意思是写在同名的.c文件下是吧??

论坛徽章:
0
16 [报告]
发表于 2007-05-10 20:58 |只看该作者
在你上一楼我就问了这么个问题,我也觉得放申明.h文件中不好,呵呵

论坛徽章:
0
17 [报告]
发表于 2007-05-10 20:59 |只看该作者
原帖由 langue 于 2007-5-10 20:51 发表


通常的做法是,把声明写在头部,而将定义写在正文里。

参考:
声明——declaration  (n.)
定义——definition  (n.)

.


再来参考《现代汉语词典》(商务印书馆 1996年7月修订第3版)

正文第 1132 页:

[声明] (1) 公开表示态度或说明真相:郑重~。
(2) 声明的文告:发表联合~。

正文第 298 页:

[定义] 对于一种事物的本质特征或一个概念的内涵和外延的确切而简要的说明。

可见,定义和声明的区别在于:1、定义比声明更注重准确性和简洁性;2、声明更强调公开性,是一种公开的说明

.

论坛徽章:
0
18 [报告]
发表于 2007-05-10 21:00 |只看该作者
原帖由 flw2 于 2007-5-10 20:52 发表

不好意思,是我错了,参考我楼上,如果没有定义就定义一个

知道,非常感谢,请帮忙看一下你下一楼我提的问题,呵呵

论坛徽章:
0
19 [报告]
发表于 2007-05-10 21:02 |只看该作者
原帖由 langue 于 2007-5-10 20:59 发表


再来参考《现代汉语词典》(商务印书馆 1996年7月修订第3版)

正文第 1132 页:

[声明] (1) 公开表示态度或说明真相:郑重~。
(2) 声明的文告:发表联合~。

正文第 298 页:

[定义] 对于一种事物 ...

大哥,这我知道,不用这么咬文嚼字吧,好歹学C的时候我们老师也强调过的,哈哈

论坛徽章:
0
20 [报告]
发表于 2007-05-10 21:06 |只看该作者
原帖由 pineapple1175 于 2007-5-10 21:02 发表

大哥,这我知道,不用这么咬文嚼字吧,好歹学C的时候我们老师也强调过的,哈哈


过度咬文嚼字是死钻牛角尖,费力不讨好。而我的做法是不放弃任何一个获取知识的机会,不断加深与巩固自我认知结构,以求更高、更深、更广层次的理解。显然两者不同。

既然你理解,你就应该明白,为何通常的做法是:1、把定义放在代码正文里;2、把声明放在代码头部

表格的头部(表头)是对表格内容/数据的说明,代码的头部是对代码内容的说明。

.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP