社区
C++ 语言
帖子详情
.c 和 .cpp 相互调用的问题
neushi
2005-06-18 10:57:09
c++代码调用c代码,在调用的函数前申明extern "C"
但是c代码想调用c++代码(一个类),应该如何办呢?
...全文
253
8
打赏
收藏
.c 和 .cpp 相互调用的问题
c++代码调用c代码,在调用的函数前申明extern "C" 但是c代码想调用c++代码(一个类),应该如何办呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jwwu
2005-06-18
打赏
举报
回复
#ifdef __cplusplus
extern "C" {
#endif
//声明 函数
void foo()
#ifdef __cplusplus
}
#endif
否则再link的时候回提示 foo() undefined refferce
Wolf0403
2005-06-18
打赏
举报
回复
用一个 extern "C" 修饰的函数作为 factory
JohnTitor
2005-06-18
打赏
举报
回复
c代码可以调用c++代码(一个类)吗?如果可以的话那c不就是支持类了吗?
caojunliang
2005-06-18
打赏
举报
回复
extern "C" 在C++中才可以使用。
因为有些情况下“C”方式和“C++"对同一段代码的编译实现事不同的。
例如在这种情况下差据很大
struct node{
int i;
int j;
} temp;
如果现在从文件中读人;
文件中的数据为(16进制):31 32 33 34 35 36 37 38
在C编译
结果temp.i=0x3231 temp.j=0x3433
而在C++中为:
结果temp.i=0x34333231 temp.j=0x338373635
原因为C++中的int 为4个字节,而C中为2个自节
clack234
2005-06-18
打赏
举报
回复
C++调用C可以这样。
extern "C"
{
C.h
C2.h
}
beepbug
2005-06-18
打赏
举报
回复
C不能调用C++的类。C++也不能调用C++的类。你不要把类和对象搞混了。类是虚的,对象是实的。在你的目的程序里,只有对象,没有类。确切地说,你也不能调用一个对象。你只能引用某对象里的一个Public变量,或发一个消息,以触发某对象里某函数。
siyang
2005-06-18
打赏
举报
回复
楼上说的有道理
holymoon858
2005-06-18
打赏
举报
回复
不要混淆概念,
C本来就不是面向对象的,不支持类;
对函数用extern "C",只是因为C++编译时函数的名称不是声名的名字,而要加一些东西,加上extern "C"后就可以根据函数的声名的名称找到该函数。
Java-call-C.
CPP
.rar_C
调用
java
Java利用java native interface 和C、C++
相互
调用
大学四年里编写的c或c++的代码.rar
同一个程序中,可以同时使用C和C++编写代码,而且可以
相互
调用
。 1. C++中
调用
C代码 这是最常用的情景,只需要在C++中用extern "C"包含C头文件即可。例如: extern "C“{ #include "stdio.h" } 2. C
调用
C++代码...
20150613.
CPP
语言
尹成讲师,带你步入 C 语言的殿堂,讲课生动风趣、深入浅出,全套视频内容充实,整个教程以 C 语言为核心,完整精彩的演练了数据结构、算法、设计模式、数据库、大数据高并发检索、文件重定向、多线程同步、进程通讯...
头文件在.c/.
cpp
中引用和.h文件引用
头文件在.c/.
cpp
中引用和.h文件引用a.h 头文件中的变量 .
cpp
文件函数的
相互
调用
c++中正确理解和区分.h和.
cpp
作用
通常,在一个C++程序中,只包含两类文件——.
cpp
文件和.h文件。其中,.
cpp
文件被称作C++源文件,里面放的都是C++的源代码;而.h文件则被称作C++头文件,里面放的也是C++的源代码。C+ +语言支持“分别编译”...
C++ 语言
64,648
社区成员
250,476
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章