CX利刃
驱动小牛
驱动小牛
  • 注册日期2001-11-21
  • 最后登录2003-09-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1217回复:3

请教各位,为什么在中间层(小端口也算吧)驱动程序上的DriverEntry例程前面可以没有extern\"C\",为什么???

楼主#
更多 发布于:2003-05-21 20:21
高手指点,是不是因为中间层不需要查找历程入口还是别的?
arthurtu
驱动巨牛
驱动巨牛
  • 注册日期2001-11-08
  • 最后登录2020-12-19
  • 粉丝0
  • 关注0
  • 积分26分
  • 威望161点
  • 贡献值0点
  • 好评度35点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-05-21 21:42
搞清楚extern \"C\"是干什么的先。
zhanghuhu
驱动小牛
驱动小牛
  • 注册日期2002-11-30
  • 最后登录2005-02-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-05-21 21:46
使用extern \"C\"说明情况是:
1. 被调用的函数是使用C约定编译好的(如C标准库函数)。
2. 编写的函数要被其他代码调用,而调用该函数的代码使用C语言调用约定。
3. 以上两种情况的组合。
如果调用方和被调用方都使用源代码编译,那么编译器可自动处理调用协议问题。你提到的问题就属于此种情况。
多多交流
scsi
驱动中牛
驱动中牛
  • 注册日期2002-03-22
  • 最后登录2011-03-09
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望116点
  • 贡献值0点
  • 好评度106点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-05-24 15:17
因为驱动中只有DriverEntry是被直接调用的
而其他函数都以函数指针在DriverEntry中传递.
游客

返回顶部