edcujm
驱动牛犊
驱动牛犊
  • 注册日期2004-05-16
  • 最后登录2005-01-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:5722回复:10

#ifdef __cplusplus是什么意思?

楼主#
更多 发布于:2004-09-11 15:23
碰到下面的情况:

#ifdef __cplusplus
extern "C"
{
#endif

不知道这是什么意思,请大虾们指点一下。
谢谢!
廖新根
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-09-11 20:07
Microsoft-Specific Predefined Macros

__cplusplus Defined for C++ programs only.

意思是说,如果是C++程序,就使用
extern "C"{
而这个东东,是指在下面的函数不使用的C++的名字修饰,而是用C的



The following code shows a header file which can be used by C and C++ client applications:
// MyCFuncs.h
#ifdef __cplusplus
extern "C" {  // only need to export C interface if
              // used by C++ source code
#endif

__declspec( dllimport ) void MyCFunc();
__declspec( dllimport ) void AnotherCFunc();

#ifdef __cplusplus
}
#endif
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-12 12:32
arthurtu兄不愧为荣誉会员,回答的简捷明了
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
地板#
发布于:2004-09-13 08:57
arthurtu兄不愧为荣誉会员,回答的简捷明了
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
jerrygod
驱动牛犊
驱动牛犊
  • 注册日期2004-09-13
  • 最后登录2006-07-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-09-14 22:04
太强了,哈哈
marks_he
驱动牛犊
驱动牛犊
  • 注册日期2004-08-21
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-09-15 22:48
使用他则我们在*.c中定义的函数就可以在*.cpp中调用了
KungFu
驱动大牛
驱动大牛
  • 注册日期2001-09-27
  • 最后登录2008-04-08
  • 粉丝0
  • 关注0
  • 积分221分
  • 威望24点
  • 贡献值0点
  • 好评度19点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2004-09-17 12:33
怎么不给分?
我不写驱动好多年
wgmilan
驱动牛犊
驱动牛犊
  • 注册日期2004-09-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2004-09-24 11:29
回答完全正确呀
hnlinkun
禁止发言
禁止发言
  • 注册日期2001-03-23
  • 最后登录2016-04-05
  • 粉丝0
  • 关注0
  • 积分9449分
  • 威望49823点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2004-09-25 11:23
用户被禁言,该主题自动屏蔽!
drvlover
驱动牛犊
驱动牛犊
  • 注册日期2004-09-21
  • 最后登录2006-05-08
  • 粉丝0
  • 关注0
  • 积分30分
  • 威望3点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2004-09-25 14:06
c, c++ 的编译器在对函数名的处理上是不一样的,有时用c++写的程序为了调用c写的库函数,所以要强制c++编译器使用c的函数命名方式。
zmwk
驱动中牛
驱动中牛
  • 注册日期2001-05-15
  • 最后登录2009-04-05
  • 粉丝0
  • 关注0
  • 积分59分
  • 威望51点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2004-10-01 22:22
除了命名方式,还有堆栈的使用方法也不同。
A strong man can save himself. A great man can save another.
游客

返回顶部