C中是否可以通过UDP使用g_socket_send通过GSocket发送十六进制值?我不一定需要以某种方式进行任何转换,但即使我在g_socket_send中手动输入十六进制字符串作为gchar缓冲区,它也会以ASCII字符串形式发送。
提前谢谢!
答案 0 :(得分:2)
您正在发送字节。您需要弄清楚另一端期望的内容,并相应地构建这些字节。比如,如果你的接收者想要二进制数据,那么可能就是这样:
char buffer[4] = { 0xFF, 0x05, 0x01, 0xFE };
/* ... */
if ( g_socket_send( socket, buffer, 4, ... ) < 0 ) {
/* handle error */
}