新聞中心
C++編程語言的應(yīng)用范圍非常廣泛,應(yīng)用方式靈活,它能夠支持多種程序設(shè)計(jì)風(fēng)格,幫助我們輕松解決許多問題。比如今天為大家介紹的C++調(diào)用C鏈接庫(kù)具體操作方法,就是一個(gè)比較經(jīng)典的例子,可以讓大家充分了解到其中的概念。#t#

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),遼源企業(yè)網(wǎng)站建設(shè),遼源品牌網(wǎng)站建設(shè),網(wǎng)站定制,遼源網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,遼源網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
C++調(diào)用C鏈接庫(kù),其實(shí)相對(duì)C調(diào)用C++。因?yàn)镃++本來就向下兼容C吧(個(gè)人見解)。
但由于編譯器的設(shè)計(jì)不同,會(huì)出現(xiàn)一些問題,如下:(如中間部分,有一句undefined reference to 'helloC()' ,helloC()是我在C鏈接庫(kù)中的函數(shù))
簡(jiǎn)單說來原因就是未經(jīng)處理的C代碼編譯后函數(shù)名可能變?yōu)開helloC()之類的,而C++編譯后函數(shù)名卻不是這樣,所以就對(duì)不上。
需要在include C的文件的時(shí)候加上extern "c"
在練習(xí)中,寫了三個(gè)文件:c.h c.c cpp.cpp 前兩個(gè)編譯為C鏈接庫(kù),cpp.cpp使用C。驗(yàn)證了C++調(diào)用C鏈接庫(kù)可以訪問到C的全局變量。
c.h:
- #include "stdio.h"
- void helloC();
- int abc = 1;
c.c:
- #include
- #include "c.h"
- void helloC(){
- printf("I am Kenko");
- }
cpp.cpp:(重點(diǎn)在于如何include)
- #include
- using namespace std;
- extern "C" {
- #include "c.h"
- }
- int main(){
- helloC();
- cout<
- return 0;
- }
C++調(diào)用C鏈接庫(kù)的相關(guān)方法就為大家介紹到這里。
本文名稱:C++調(diào)用C鏈接庫(kù)具體應(yīng)用技巧講解
本文網(wǎng)址:http://fisionsoft.com.cn/article/cogihig.html


咨詢
建站咨詢
