C++ - 純C語言寫的代碼在C++中使用


我們拿在Qt項目中加入純C語言寫的代碼文件來舉例

 

問題

在Qt項目中如果加入純C語言寫的代碼文件后,Qt工程就會無法編譯。

 

解決方法

在純C語言寫的代碼文件的頭文件中加入以下內容即可

#pragma once
//C++ 運行該文件時,extern C包含的內容用C語言方式連接
#ifdef __cplusplus
   extern "C"{
#endif 
 
//C代碼內容所在位置
 
#ifdef __cplusplus
}
#endif 

 

 

實例

純C語言寫的代碼文件為:test.h,test.c

其中test.c文件內容為:

#include "test.h"
#include <stdio.h>

int add(int a,int b)
{
    return a+b;
}

則test.h文件內容應為:

#ifndef TEST_H
#define TEST_H

//C++ 運行該文件時,extern C包含的內容用C語言方式連接
#ifdef __cplusplus
   extern "C"{
#endif 
 
#include <stdio.h>
int add();
 
#ifdef __cplusplus
}
#endif

#endif

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM