【发布时间】:2010-09-22 06:47:58
【问题描述】:
向串口发送一个串口字符串字符。我需要调用 WriteFile(handle, "A", strlen("A"), ...)
但是,如果我想指定并发送一个十六进制或二进制数怎么办?比如我要发送 WriteFile(handle, 0x41, sizeOf(0x41), ...) ?
有没有允许我这样做的功能?
【问题讨论】:
标签: winapi binary serial-port hex
向串口发送一个串口字符串字符。我需要调用 WriteFile(handle, "A", strlen("A"), ...)
但是,如果我想指定并发送一个十六进制或二进制数怎么办?比如我要发送 WriteFile(handle, 0x41, sizeOf(0x41), ...) ?
有没有允许我这样做的功能?
【问题讨论】:
标签: winapi binary serial-port hex
如果你只想写一个字节,它仍然需要在一个数组中。
所以你需要:
int buffer[1024];
buffer[0] = 42;
WriteFile(handle, buffer, 1);
看到这个: http://msdn.microsoft.com/en-us/library/aa365747(VS.85).aspx
【讨论】:
有很多方法。
对你来说最直接的方法是 WriteFile(handle, "\x41", 1 ... );
strlen() 是多余的,因为你知道长度。
【讨论】: