Qt调用C函数

一.Qt或者C++中调用C函数方法

1.如果在Qt或者C++文件中直接调用.c文件中的C函数是会报错的,如:

error: undefined reference to `vendor_app_handle()'

2.这种情况有两种解决方法:

(1)在头文件中直接使用

#ifdef __cplusplus

extern "C" {

#endif

#include "xxx.h"

int vendor_app_handle(void);

#ifdef __cplusplus

}

#endif

(2) 在需要调用c函数的cpp文件中包含对应的.h文件,然后就可以直接调用c函数了

二.完整代码示例

1.function.h

#ifndef FUNCTION_H

#define FUNCTION_H

#ifdef __cplusplus

extern "C" {

#endif

#include <stdio.h>

int add(int a, int b);

char *rstr(char *str);

#ifdef __cplusplus

}

#endif

#endif

2.function.c

#include "function.h"

int add(int a, int b)

{

return a+b;

}

char *rstr(char *str)

{

return str;

}

  1. mainwindow.cpp 调用结果
相关推荐
新手村领路人11 小时前
在macos python中安装dlib
开发语言·python·macos
郝学胜-神的一滴11 小时前
Qt 高级开发 024:QSplitter分裂器布局精讲
开发语言·c++·qt·程序人生·用户界面
晚风吹红霞12 小时前
深入浅出C++ STL:从入门到精通的核心指南
开发语言·c++
JAVA社区12 小时前
Java高级全套教程(十四)—— SpringData超详细实战详解
java·开发语言·spring cloud·面试·职场和发展
182******208312 小时前
2026年学C语言还有出路吗?学习需要报班吗?
c语言·开发语言·学习
-凌凌漆-13 小时前
【Qt】std::shared_ptr<>与std::make_shared<>
开发语言·qt
_阿伟_13 小时前
计算机知识科普
java·开发语言
ulias21213 小时前
深挖进程间通信的奥秘
java·linux·服务器·开发语言·c++·算法
于先生吖13 小时前
UniApp搭配Java后端实现到店预约上门指派,订单状态流转与结算开发教程
java·开发语言·uni-app