我正在使用串行端口控制称为nano控制器的设备。我使用CreateFile
,writeFile
和readFile
进行通信。
这是writeFile
的语法,
if (!WriteFile(hComm, lpBuf, dwToWrite, &dwWritten, &osWrite)) {
if (GetLastError() != ERROR_IO_PENDING) {
// WriteFile failed, but isn't delayed. Report error and abort.
fRes = FALSE;
}
}
这里的数据应包含在
lpBuf
中。它是一个缓冲区。我想分配“ MINC,moveL”。这里的
MINC
是文本。但是,moveL
是变量,其类型应为double。值应随时间传递给moveL
。 moveL
在0到10000之间变化。那么如何填充缓冲区?
最佳答案
听起来像您要sprintf
(或其表亲之一):
char buffer[128];
sprintf(buffer, "MINC,%f", moveL);
WriteFile(hComm, buffer, ...);
关于c - 将字符串和变量写入C中的缓冲区,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10544606/