欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2858|回復: 0
打印 上一主題 下一主題
收起左側

#ifdef __cplusplus extern C的功能

[復制鏈接]
跳轉到指定樓層
樓主
ID:65608 發表于 2014-9-1 22:57 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#ifdef __cplusplus
extern "C" {
#endif

//一段代碼
#ifdef __cplusplus
}
#endif
如果你不想理解這段代碼的意義,那么請你記住:在你的代碼不知道是被c調用還是c++調用時,請添加此段代碼。
下面詳細說明此段代碼的意義:
__cplusplus
是c++定義的宏,如果是c++調用的話,extern c聲明會有效。如果時c調用的話,那么,extern c聲明無效。
        要明白為何使用extern "C",還得從cpp中對函數的重載處理開始說起。在c++中,為了支持重載機制,在編譯生成的匯編碼中,要對函數的名字進行一些處理,加入比如函數的返 回類型等等.而在C中,只是簡單的函數名字而已,不會加入其他的信息.也就是說:C++和C對產生的函數名字的處理是不一樣的. 目的就是主要實現C與C++的相互調用問題。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表