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 调用结果
相关推荐
源码站~4 分钟前
基于机器学习的社交媒体舆情分析系统
开发语言·python
jieyucx14 分钟前
Go 语言零基础入门:编写第一个 Hello World 程序
开发语言·后端·golang
沐知全栈开发18 分钟前
Rust 数据类型
开发语言
jieyucx25 分钟前
Go 语言基础语法:变量、常量与数据类型详解
开发语言·后端·golang
光影少年26 分钟前
Python+LangGraph学习路线及发展前景
开发语言·人工智能·python·学习
NOCSAH33 分钟前
统好AI:Java技术生态下的智能知识管理新选择
java·开发语言·人工智能
穗余44 分钟前
Rust——println!后面的感叹号什么意思【宏】
开发语言·python·rust
原来是猿1 小时前
QT初识【创建项目+对象树】
开发语言·qt
长安第一美人1 小时前
算能 BM1688 低延迟推流:Qt+WebSocket 直出 H5/HDMI
开发语言·网络·嵌入式硬件·websocket·交互
水饺编程1 小时前
第5章,[标签 Win32] :获取设备环境的信息
c语言·c++·windows·visual studio