【问题标题】:from int to char, Sending byte by byte [duplicate]从int到char,逐字节发送[重复]
【发布时间】:2016-03-05 23:36:13
【问题描述】:

我想知道如何将 6 位数字(例如 198200)转换为 char(例如 Tx = ['1', '9', '8', '2', '0', '0']),以便稍后我可以编写:

*p_tx_buffer++ = Tx[2];

然后我只会发送'8'

【问题讨论】:

标签: c++ c char int


【解决方案1】:

一个简单快速的解决方案是

char array[100];
int number = 198200;
if (snprintf(array, sizeof(array), "%d", number) >= sizeof(array))
    fprintf(stderr, "there is not enough room for the string\n");
else
    fprintf(stdout, "array[2] = %c\n", array[2]);

【讨论】:

  • 感谢您的回答,但是如果我只想获取保存的字符,例如仅 Tx,因为我想稍后使用它,我应该考虑什么?因为使用您提供的代码,我相信我只能打印它,我希望它作为保存的变量?谢谢
  • 你认为array是什么?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-04
  • 1970-01-01
  • 2012-03-30
  • 1970-01-01
  • 1970-01-01
  • 2011-07-08
相关资源
最近更新 更多