我正在尝试使用 sprintf() 为 C++ 中的 arduino 项目格式化 char 数组 我的目标是将以下整数格式化:日、月、年、小时、分钟和秒
DD/MM/YYYY HH:MM:SS
当整数 < 10 时出现我的问题
sprintf (timeStr, "%c%u/%c%u/%u %c%u:%c%u:%c%u",(monthDay>0 && monthDay<=9)?'0':'',monthDay,(month>0 && month<=9)?'0':'',month,year,(hour>0 && hour<=9)?'0':'',hour,(minute>0 && minute<=9)?'0':'',minute,(second>0 && second<=9)?'0':'',second);
现在这不会编译,因为我得到“空字符常量”,我认为它来自 '' 没有合法价值。
如果语句中的 %c 是有条件的,我只想要一个值,如果它 <10 我只想要一个值
如果有人对我如何实现这一点有任何见解,我将不胜感激,因为我真的坚持下去了!
谢谢!