通过不透明指针获取xml数据
Obtaining xml data through an opaque pointer
我在使用供应商的api检索消息的xml部分时遇到问题。作为工作原理的示例:getDestination(void*消息,void*目的地,void*大小)
vendordestinationtype_t dest;
getDestination(msg_p, &dest, 16);
printf("Received message. (Destination: %s).n", dest.dest);
产生:收到的消息。(目的地:某个目的地)。
为了检索消息的XML部分,它需要一个getXmlPtr(void*msg,void**XML_ptr,void*XML_length)函数
char ptr[10000];
int size;
getXmlPtr(msg_p, (void**)&ptr, &size);
printf("Received message. (XML: %s).n", ptr);
因此,问题是,我如何声明和传递ptr,以便我可以获得xml信息(供应商的文档非常糟糕)——它主要说参数应该是指向应用程序指针的指针,以在返回时填充消息xml数据指针。程序员可以将返回的void指针强制转换为适用于应用程序的任何引用。
好吧,您将指向void的指针声明为指向void的指示器:void *ptr;
。
void**
表示通过引用传递指针;据推测,该函数将对此进行修改,以指向存储XML数据的任何位置。所以你需要一个指针,而不是数组:
void * ptr;
int size;
getXMLPtr(msg_p, &ptr, &size);
相关文章:
- 从 XML 中读取未指定结构的每个数据成员
- 如何在 XML 中正确存储原始字节数据并恢复它?
- 如何从客户端在 gsoap C++ 的标头中传递非 xml 数据?
- 在计算机之间发送XML数据 - Qt.
- 为 C++ 使用适当的 XML 数据类型
- tcp套接字数据以xml数据包的形式发送
- 在QTcpSocket中连续发送XML数据的最简单方法
- 使 XML 数据显示在 Blackberry 10 Cascades QML 中的 listItemComponents
- 如何使用字符串在Qt中使用套接字发送/接收XML数据
- POCO 如何发送 XML 数据
- 什么容器是管理XML数据的最佳容器
- 通过不透明指针获取xml数据
- 通过 UDP 发送 XML 数据
- 使用"Memory Mapped Files"读取大XML数据的模式是什么?
- XML数据绑定-可以自动完成读/写功能
- Qt c++ QDomDocument,递归迭代XML数据,检索没有子数据的文本元素
- c++中的XML数据绑定,具有简单的非侵入性数据模型
- C++的XML数据绑定,类似于java的JAXB
- 数据绑定- XML数据绑定和c++代码生成器
- Boost::asio::streambuf通过https检索XML数据