Arduino关于长整形数据转换成String类型

Arduino关于长整形数据转换成String类型


  • 今天在项目开发中就遇到一个问题,需要将一个长长整形数据转换成String类型的数据。

uint8_t / uint16_t / uint32_t /uint64_t

前面3个类型还好说,容易实现,遇到了uint64_t,转换就出了问题。

  • String类数据是处理的起来是最灵活的,可是遇到uint64_t,一般的方法还不凑效。

解决办法

  • 先定义一个char类型的数组来接收uint64_t,再将char数组直接赋值给String类型的变量。具体操作如下:
String str="size:";uint64_t cardSize = SD.cardSize() / (1024 * 1024);char buff[10];//长度根据需求自己定义。char buff2[10];sprintf_P(buff, PSTR(" %llu"),cardSize);sprintf(buff2," %llu", SDsize);str += buff;
  • sprintf_P也就是sprintf变种的作用相同,是将一个格式化的字符串输出到一个目标字符串中,而printf是将一个格式化的字符串输出到屏幕。

  今日的努力, 是为了不再重复痛苦的过去。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部