久久婷婷香蕉热狠狠综合,精品无码国产自产拍在线观看蜜,寡妇房东在做爰3,中文字幕日本人妻久久久免费,国产成人精品三上悠亚久久

當前位置:首頁 > 學習資源 > 講師博文 > 教學部C++-C語言與C++相互使用

教學部C++-C語言與C++相互使用 時間:2024-01-19      來源:華清遠見

前言

 C和C++是兩種不同的編程語言,它們之間可以通過一些方式進行交互和調用。下面是一些關于C和C++之間相互調用的常見方法和注意事項。

 

一、C++調用C

1.1創建項目

 首先我們要有2個項目,一個項目以C++程序編譯,要調用的項目是以C程序編譯的。我們將以vs2019進行演示。

C++項目如下:

C語言項目如下:(注意:C語言需要添加頭文件.h,頭文件主要提供給主程序包含)

C語言頭文件如下:

 

因為是C++調用C,而程序只有一個main函數,所以C項目里沒有main函數。

1.2生成靜態庫

我們需要把C項目生成為靜態庫,具體操作如下:

右鍵點擊我們的項目。

 

點擊后如下圖,選擇屬性:

打開屬性后,選擇常規,并將配置類型選擇為靜態庫,如下圖:

點擊應用,再點擊確定。確定后開始編譯如下圖:

根據路徑打開我們的文件,打開后如下圖:(.lib就是這個項目的靜態庫)

至此我們我靜態庫就已經生成完畢了。

1.3包含頭文件

 生成完靜態庫后,我們需要把生成的.lib文件和C程序的.h文件復制到我們的C++項目里。如下圖:

1.4添加依賴庫

 將靜態庫以及C頭文件添加到C++目錄后,我們需要打開我們的C++項目,并打開C++項目的項目屬性。如下圖:



 

 打開屬性后,選擇“鏈接器->輸入”在附加依賴庫一欄中,把我們生成的C成語的.lib靜態庫添加進去。

1.5 程序

 至此我們的環境搭建完成,然后我們需要使用”extern關鍵字”來修飾這個C的頭文件。

如下圖:

并將程序更改如下:

更改完成后,點擊編譯。這樣我們就能使用C++程序調用C程序的內容了。

 

二、C調用C++

2.1更改程序目錄

我們要把調用的程序,改成C++程序.cpp。

然后把主程序改成C程序,如下圖:

2.2更改代碼

 但是此時出問題了,C語言里并沒有”extern C”這個用法, 這種用法放C程序里會出錯,所以我們把他刪掉。

 然后,將我們的輸出打印從”C”改成”C++”.

 因為CPP程序和C語言程序得函數名的修飾不同,所以我們要用extern來修飾C++程序里需要調用的函數。

 但是此時又來問題了,.h的頭文件會在預處理進行展開,但是C語言不認識extern ”C”,所以我們可以這樣操作:

 __cplusplus是一個宏定義,只要在以C++程序編譯時,才會有。如果不是以C++程序編譯,那么就不會展開extern ”c”。

然后我們就可以編譯了,生成的是C++程序的靜態庫。

2.3生成添加依賴庫

再把C++的靜態庫和.h文件,移動到C程序目錄。

在我們的.c主程序中,也需要添加依賴庫。如下圖


 

添加完成之后,選擇確認。

 

這樣我們就可以成功用C程序調用C++程序里的函數。

2.4編譯

上一篇:嵌入式好還是后端開發好

下一篇:TCPIP協議棧在用戶態的好還是在內核態的好

戳我查看嵌入式每月就業風云榜

點我了解華清遠見高校學霸學習秘籍

猜你關心企業是如何評價華清學員的

干貨分享
相關新聞
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2024 北京華清遠見科技發展有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部