繁体   English   中英

如何在WinPcap中发送整数值?

[英]How to send integer value in WinPcap?

我设置了MAC地址并按照以下链接练习了WinPcap的教程: https ://www.winpcap.org/docs/docs_40_2/html/group__wpcap__tut8.html(发送带有pcap_sendpacket()标题的单个数据包)

但是,我需要将9999值添加到第25个索引,如下所示。

packet[25]=9999;

但是数据包必须是u_char类型。 在这种情况下,如何根据需要分配变量?

值9999大于255,因此无法容纳1个字节。 您需要2个字节来编写它。 假设您可以使用字节25和26。在这种情况下,您需要以下代码:

#include <winsock2.h> // for using ntohs
...
*(uint16_t*)(packet + 25) = htons(9999);

htons为单位的需求是按照网络顺序写入值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM