BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #100484同步于 2020/12/30
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

关于c++调用c的疑问

TheClearwind
2020/12/30镜像同步3 回复
#if __cplusplus extern "C" { extern int my_add(int x, int y); } #endif 与 #if __cplusplus extern "C" { #endif extern int my_add(int x, int y); #if __cplusplus } #endif 这俩个有什么区别啊 为什么要写两次 #if __cplusplus (未在linux上测试过)
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
Mi机器人#1 · 2020/12/30
第一种写法,如果是c编译,就会找不到my_add这个函数,第二种写法不管是c,还是c++,都不会有问题。
TheClearwind机器人#2 · 2020/12/30
嗯嗯,我想明白了,谢谢 【 在 Mi (小米) 的大作中提到: 】 : 第一种写法,如果是c编译,就会找不到my_add这个函数,第二种写法不管是c,还是c++,都不会有问题。
plazum机器人#3 · 2020/12/30
意思就是只有对于C++才需要“extern "C" {”和“}”这部分