如何将 char=2 转换为 char="2" ?
我需要它通过 uart 发送,但是当我尝试将 char 作为 2 发送时,我什么也得不到,但是当我作为“2”发送时,我得到 2
重点是,我有
整数 s=2;
我需要将它写为“2”而不是 2。我尝试了几种方法,但总是失败。当终端中的 char = 2 消息为空时,当 char 签名为“2”时,它工作正常。当我尝试将 int 转换为 char 时,char 总是被签名为 2,我不能只通过 uart 发送 int 因为块发送函数需要指针。
如何将 char=2 转换为 char="2" ?
我需要它通过 uart 发送,但是当我尝试将 char 作为 2 发送时,我什么也得不到,但是当我作为“2”发送时,我得到 2
重点是,我有
整数 s=2;
我需要将它写为“2”而不是 2。我尝试了几种方法,但总是失败。当终端中的 char = 2 消息为空时,当 char 签名为“2”时,它工作正常。当我尝试将 int 转换为 char 时,char 总是被签名为 2,我不能只通过 uart 发送 int 因为块发送函数需要指针。
您可以使用itoa()
将整数转换为字符。
如果您一次只需要一个字符,您也可以使用以下内容:
char s =2;
s+='0';
您用于通过 uart 发送的呼叫的功能头是什么?你能告诉我们更多关于设备是什么的信息吗?
您可以修改一端的发送方式,也可以更改另一端的阅读方式。大概您可以将数据读取为整数,或将其转换为整数,因此并非所有内容都必须通过字符串发送,整个转换问题就会消失。
话虽如此,您可以通过添加常量 48 将 0-9 从整数转换为 ascii 代码,但我认为这并不是您真正想要的。