0

如何将 char=2 转换为 char="2" ?

我需要它通过 uart 发送,但是当我尝试将 char 作为 2 发送时,我什么也得不到,但是当我作为“2”发送时,我得到 2

重点是,我有

整数 s=2;

我需要将它写为“2”而不是 2。我尝试了几种方法,但总是失败。当终端中的 char = 2 消息为空时,当 char 签名为“2”时,它工作正常。当我尝试将 int 转换为 char 时,char 总是被签名为 2,我不能只通过 uart 发送 int 因为块发送函数需要指针。

4

3 回答 3

1

您可以使用itoa()将整数转换为字符。

http://www.jb.man.ac.uk/~slowe/cpp/itoa.html

于 2013-05-18T18:45:15.837 回答
0

如果您一次只需要一个字符,您也可以使用以下内容:

char s =2;
s+='0'; 
于 2013-05-18T18:47:08.393 回答
0

您用于通过 uart 发送的呼叫的功能头是什么?你能告诉我们更多关于设备是什么的信息吗?

您可以修改一端的发送方式,也可以更改另一端的阅读方式。大概您可以将数据读取为整数,或将其转换为整数,因此并非所有内容都必须通过字符串发送,整个转换问题就会消失。

话虽如此,您可以通过添加常量 48 将 0-9 从整数转换为 ascii 代码,但我认为这并不是您真正想要的。

于 2013-05-18T19:14:57.673 回答