1

我正在使用 Arduino 开发一个项目,因此,我正在从串行端口(发送ints)读取数据。然后我需要将此串行通信写入 LCD,这需要char*.

我需要将串口中的几个字符(两个整数)读入一个字符串。两者都收到后,我需要清除字符串以准备接下来的两个字符。

TLDR:如何将 an 附加int到 a char*,然后在字符串有两个字符后清除该字符串?

4

2 回答 2

2

char 是单个字符,而 char* 可以是指向字符的指针或指向 C 字符串中第一个字符的指针,C 字符串是由空字符终止的字符数组。

您不能使用 char 来表示长于 1 位的整数,所以我假设您实际上是指 char*。

如果你有

char buffer[10];

然后您可以使用 sprintf设置buffer为表示 i​​nt 的字符串n

sprintf(buffer, "%d", n);

完成后,您可以清除字符串

sprintf(buffer, "");

希望这就是你所要求的,祝你好运!

于 2009-06-06T07:54:45.767 回答
0

你不能读入一个 char *,它是一个指针。你可以读入指针指向的内存,只要它指向有效的东西。至于清算,你的意思并不明显。

底线是你需要发布一些实际的代码来尝试做你想做的事情,并询问这个问题。

于 2009-06-06T07:39:37.857 回答