c文件函数调用c++文件函数的编译方法

本文探讨了为何在C代码中调用C++函数的需求,并详细介绍了如何在C项目中编译和组织C++代码。通过示例说明了函数声明的放置、C++头文件的处理,以及编译过程,最终成功实现C调用C++函数的场景。
摘要由CSDN通过智能技术生成

为什么要在c文件函数里调用c++文件函数?

很多现有代码都是c语言写的,我们需要对其进行扩展时,如果需要用到模板或类时,就需要使用c++编写,而且c++提供了STL,可以很方便的实现一些功能,所以使用c++编程可以减少工作量。

如何在c项目里编写c++文件代码?

  1. 将函数声明放在头文件中
  2. 把要被c函数调用的c++函数的声明放在extern "C"{ ... }语句块里
  3. 标准c++的头文件包含不能放在extern "C"{ ... }语句块里
  4. 示例:

test_c.c里的函数c_test()调用了test_cpp1.cpp文件里的函数cpp_test()。

//test_c.h
#ifndef TEST_C_H
#define TEST_C_H

void c_test(int *array,int n);

#endif
//test_c.c
#include "test_c.h"
#include "test_cpp1.hpp"

void c_test(int *array,int n){
   
    for(int i=0;i<n;++i){
   
        array[i]=i;
    }
    cpp_test<
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值