VS 控制台程序出现不能引用c的问题

在visual stduio测试纯c代码时,出现main调用c接口时不能引用的问题:

错误 LNK2019 无法解析的外部符号 "void __cdecl xxx_alg_init(void)" (?xxx_alg_init@@YAXXZ),函数 main 中引用了该符号 xxx_alg_init

原因是c++程序调用c接口的时候,c接口需要对自身做申明,告诉编译器使用c编译进行编译,而不是c++编译器,通过extern "C" 做申明:

C语言 __cplusplus - C语言零基础入门教程 - 猿说编程 - 博客园 (cnblogs.com)

相关推荐
晓蛋4 天前
c语言指的是什么意思
c语言·编译器·编程开发·集成开发环境·程序实例
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
傲世仙尊4 天前
目录即文件-Ext文件系统收尾篇
linux·c语言
牵猫散步的鱼儿4 天前
重载、重写(覆盖)、重定义区别
c语言
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
phltxy4 天前
C 语言指针:从内存地址到灵活的数据访问
c语言
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
phltxy4 天前
C 语言中的数据存储:从类型到二进制位
c语言
霍霍的袁4 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
孙启超4 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust