免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4104 | 回复: 15
打印 上一主题 下一主题

[C++] C和C++之间交换数据的问题!(急) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-10-14 18:48 |只看该作者 |倒序浏览
我一个程序是C的,用fwrite/fread把结构struct写/读到文件中,而另一个程序是C++的,没有定义结构,是用类做的,他们之间要传输数据及数据间的结构,该如何做呢?
是不是需要在C++中再定义一些Struct,然后用fwrite/fread来读/写,再把数据传给类呢?

如果有其他好的办法,希望能提示我一下!谢谢!

论坛徽章:
0
2 [报告]
发表于 2007-10-14 18:57 |只看该作者
我晕,两个进程的事情,跟语言啥关系啊?上次楼主问这个问题的时候大家已经提供了N多解决方案了

论坛徽章:
0
3 [报告]
发表于 2007-10-14 19:10 |只看该作者
既然楼主这样问, 一种选择就是看<C++ Primer>第20章文件如何读写. 第二种选择就是使用你说的这种struct的方法来读吧. 估计这种你上手快些.

论坛徽章:
0
4 [报告]
发表于 2007-10-14 21:46 |只看该作者

回复 #2 cugb_cat 的帖子

谢谢你的呼应!
你觉得和语言没有关系吗?肯定存在怎么实现的问题吧!一个是结构是用C++的类封装节点,另一个是用C的struct封装的,如果用文件的话,比如C是将struct一个个存入文件,那这边C++如果读出来呢?肯定不能直接把结构块读到类块中吧?
不知道你明白我的意思没有?
至于他们之间数据结构保存问题我已经知道!谢谢关心!

论坛徽章:
0
5 [报告]
发表于 2007-10-14 21:49 |只看该作者

回复 #2 cugb_cat 的帖子

还有就是,这两个工程不一定是在一个机子上运行,而且不同时!所以先不考虑进程之间的问题,先从文件入手吧!多多指点!

论坛徽章:
0
6 [报告]
发表于 2007-10-14 21:50 |只看该作者
你文件怎样写进去的, 就怎么读出来啊. 只要读的格式与写进去时候的格式相同就可以.

论坛徽章:
0
7 [报告]
发表于 2007-10-14 22:01 |只看该作者

回复 #6 scutan 的帖子

我知道,但是:
一个结构是用C++的类封装节点,另一个是用C的struct封装的,如果用文件的话,比如C是将struct一个个存入文件,那这边C++如何读出来呢?肯定不能直接把结构块读到类块中吧?当然可以先存入struct,可是没有直接的办法吗?

论坛徽章:
0
8 [报告]
发表于 2007-10-14 22:12 |只看该作者
原帖由 3018857 于 2007-10-14 22:01 发表
我知道,但是:
一个结构是用C++的类封装节点,另一个是用C的struct封装的,如果用文件的话,比如C是将struct一个个存入文件,那这边C++如何读出来呢?肯定不能直接把结构块读到类块中吧?当然可以先存入struct,可是没 ...


你还是试一下再说话吧

论坛徽章:
0
9 [报告]
发表于 2007-10-14 22:17 |只看该作者
原帖由 3018857 于 2007-10-14 21:46 发表
谢谢你的呼应!
你觉得和语言没有关系吗?肯定存在怎么实现的问题吧!一个是结构是用C++的类封装节点,另一个是用C的struct封装的,如果用文件的话,比如C是将struct一个个存入文件,那这边C++如果读出来呢?肯定不能直 ...

即使是两边都用C的struct封装也不能一边直接把结构体写到文件,另一边直接从文件中读出,不管是两个进程还是两台机器(两台机器更是两个进程了)都要设计通信协议。

论坛徽章:
0
10 [报告]
发表于 2007-10-14 22:19 |只看该作者
不在同一台机器上?那别忘了字节序问题!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP