如何将char = 2转换为char =“2”?
我需要它通过uart发送,但是当我试图发送char为2时我什么都没得到,但当我发送为“2”时我得到2
重点是,我有
int s = 2;
我需要把它写成char,因为“2”而不是2。 我尝试了几种方法,但总是失败。当char = 2时,终端中的消息只是空的,当char被签名为“2”时,它工作正常。当我试图将int转换为char时,char总是被标记为2,我不能只通过uart发送int因为块发送函数需要指针。
答案 0 :(得分:1)
您可以使用itoa()
将整数转换为char。
答案 1 :(得分:0)
如果您一次只需要一个字符,您也可以使用以下字符:
char s =2;
s+='0';
答案 2 :(得分:0)
您用来通过uart发送的电话的功能头是什么?您能否向我们提供有关该设备的更多信息?
您可以修复一端发送的方式,也可以更改另一端的读取方式。大概你可以把数据读成整数,或者把它转换成数据,所以不是所有东西都必须通过字符串发送,这整个转换问题都会消失。
所有这一切,你可以通过添加常量48将0-9从整数转换为ascii代码,但我认为这不是你想要的。