我正在使用 Arduino 开发一个项目,因此,我正在从串行端口(发送int
s)读取数据。然后我需要将此串行通信写入 LCD,这需要char*
.
我需要将串口中的几个字符(两个整数)读入一个字符串。两者都收到后,我需要清除字符串以准备接下来的两个字符。
TLDR:如何将 an 附加int
到 a char*
,然后在字符串有两个字符后清除该字符串?
char 是单个字符,而 char* 可以是指向字符的指针或指向 C 字符串中第一个字符的指针,C 字符串是由空字符终止的字符数组。
您不能使用 char 来表示长于 1 位的整数,所以我假设您实际上是指 char*。
如果你有
char buffer[10];
然后您可以使用 sprintf设置buffer
为表示 int 的字符串n
sprintf(buffer, "%d", n);
完成后,您可以清除字符串
sprintf(buffer, "");
希望这就是你所要求的,祝你好运!
你不能读入一个 char *,它是一个指针。你可以读入指针指向的内存,只要它指向有效的东西。至于清算,你的意思并不明显。
底线是你需要发布一些实际的代码来尝试做你想做的事情,并询问这个问题。