如何通过管道发送和接收结构变量
How to send and receive a structure variable through via pipe
嗨,我必须发送和接收一条结构消息,如何使用管道
我的信息是这样的
typedef struct{
char[20] myMessage,
int count,
char[10] address
} sendMessage;
我知道我可以使用 writefile/readfile 发送字符串消息,但是我如何发送结构变量。
您可以通过通常调用一端的WriteFile
和另一端的ReadFile
来做到这一点。重要的是要记住,它们可以写入和读取的字节数少于请求的字节数,因此它们应该在循环中使用,直到接收/传输所有数据。
对于固定大小的读写,我有时会发现将管道句柄/描述符重新包装成FILE*
结构很方便,因此短读取和短写入由 C 运行时库处理。在 Windows 上,它分两个阶段完成:_open_osfhandle
获取句柄的 CRT lowio 文件描述符,然后_fdopen
获取 lowio 描述符的FILE*
。(警告:使用 _O_BINARY
进行_fdopen
以确保没有换行符翻译)。
相关文章:
- 在类构造函数中使用结构变量
- 在类构造函数中定义结构变量的参数
- 为什么我们再次从结构对象创建结构变量?
- 如何从其他结构访问受保护的结构变量
- 指向结构变量的指针未保存到eeprom
- 为什么我的程序没有更改结构变量中的值?
- 在 CPP 中初始化 typedef 结构变量
- 带有大结构变量的 CUDA 内核函数给出了错误的结果
- 有没有办法初始化不涉及编写构造函数的新结构变量?
- 结构变量查询
- 在结构声明的分号之前声明的结构变量是否为全局变量
- C++ 如何访问指针的结构变量
- 使用指向结构变量成员的指针访问该结构的成员的地址
- 为什么在 sizeof() 函数中与 * 运算符一起使用和不使用 * 运算符时,指向结构变量的指针大小会有所不同?
- 如何在类别内的类中访问类中的结构变量
- 尝试使用文本文件初始化多个结构变量
- 从类对象到结构变量的 memcpy
- C++结构变量初始化时出现问题
- 如何在 C++ 中使用带有类/结构变量的列表
- 动态数组添加元素而不创建结构变量/对象