【发布时间】:2021-11-02 07:17:50
【问题描述】:
如何在 C 中将 short 转换为 unsigned char *buf?
我读取了我的数据
short read_raw_data(int addr) {
short high_byte, low_byte, value;
high_byte = wiringPiI2CReadReg8(fd, addr);
low_byte = wiringPiI2CReadReg8(fd, addr + 1);
value = (high_byte << 8) | low_byte;
return value;
}
并想与它一起发送
lws_write(struct lws *wsi, unsigned char *buf, size_t len, enum lws_write_protocol protocol);
喜欢
m = lws_write(wsi, myShortConvertedToUnsignedChar + LWS_PRE, 32, LWS_WRITE_TEXT);
如何做到这一点?
【问题讨论】:
-
第一步是删除所有默认整数类型并开始使用stdint.h。您应该只在这个 sn-p 中使用 uint8_t、uint16_t 和也许 uint32_t,因为在有符号位算术和隐式类型提升方面存在多个问题。
标签: c libwebsockets