STM32/STM8技术william hill官网
直播中

郎渐海

7年用户 268经验值
私信 关注
[问答]

请问STM32的printf的支持哪些格式呢?

网上也没百度到好的解释,看程序里这样


就直接输入日期了,那printf还支持哪些格式呢?

回帖(17)

李淇淇

2018-9-19 09:32:11
不懂,跟着学习
举报

孙婷婷

2018-9-19 09:44:03
支持标准C语言的格式,日期这种估计是linux或者PC上可以实现。
举报

郎渐海

2018-9-19 09:49:21
引用: TOPCB 发表于 2018-9-19 18:40
支持标准C语言的格式,日期这种估计是linux或者PC上可以实现。

就是在pc上输出的啊
举报

杨帆

2018-9-19 10:02:30
只认识楼主说的
举报

庄金樱

2018-9-19 10:14:04
你两个字符串组合不用+号么
举报

郎渐海

2018-9-19 10:30:19
引用: HengDu 发表于 2018-9-19 18:58
只认识楼主说的

没有其它的了么
举报

郎渐海

2018-9-19 10:49:41
引用: vuweurvxs 发表于 2018-9-19 19:10
你两个字符串组合不用+号么

额。。。。就是想找一个说明啊
举报

庄金樱

2018-9-19 11:01:45
搜索C语言入门,一堆一堆的
举报

郎渐海

2018-9-19 11:11:11
引用: vuweurvxs 发表于 2018-9-19 19:58
搜索C语言入门,一堆一堆的

反正我是搜不到,只有标准的c格式,找不到那些关键字
举报

庄金樱

2018-9-19 11:26:55
引用: youxi8745 发表于 2018-9-19 20:07
反正我是搜不到,只有标准的c格式,找不到那些关键字

关键字都是函数库,搜C语言标准函数库
举报

郎渐海

2018-9-19 11:38:06
引用: vuweurvxs 发表于 2018-9-19 20:23
关键字都是函数库,搜C语言标准函数库

没懂
举报

况冶

2018-9-19 11:52:32
第一次见。。。。。。。。。。。
举报

李悛

2018-9-19 11:59:42
__DATE__还有另一个是一个字符串,字符串之间是可以并联写在一起的,比如
“hello”“world”,其实等同于“helloworld”。
具体参考printf的参考吧:
http://www.cplusplus.com/reference/cstdio/printf/?kw=printf
举报

郎渐海

2018-9-19 12:10:51
引用: 7762642422d 发表于 2018-9-19 20:56
__DATE__还有另一个是一个字符串,字符串之间是可以并联写在一起的,比如
“hello”“world”,其实等同于“helloworld”。
具体参考printf的参考吧:

他输出到电脑就成日期了
举报

郎渐海

2018-9-19 12:21:33
引用: jasonzhang_001 发表于 2018-9-19 20:48
第一次见。。。。。。。。。。。

我以前也没遇到过
举报

李悛

2018-9-19 12:28:29
引用: youxi8745 发表于 2018-9-19 21:07
他输出到电脑就成日期了

本帖最后由 moyanming2013 于 2015-3-27 16:51 编辑

__DATE__和__TIME__都是C语言预定义宏,其提供了当前编译或编译器本身的信息(换句话说就是你使用的编译器应该是支持上述预定义宏的,其实最基本的编译器都支持的)。
__DATE__宏表示一个字符串字面量,格式“mm dd yyyy”。
__TIME__宏表示一个字符串字面量,格式“hh:mm:ss"。
__DATE__和__TIME__指明了程序编译时的时间信息,也就是说:当你的程序编译完成后,上述信息就已经确定了,跟你什么时间执行无关。这个可以唯一的表示出当前执行的程序是什么时间编译的。
由于printf支持字符串分开写,比如“hello”“world”,会被识别为一个字符串“helloworld”。
所以你可以这样使用:
printf(__DATE__“-”__TIME__);//注意中间有个-字符串。
或者这样:
printf("%s-%s",__DATE__,__TIME__);
更多信息请参考:《C语言程序设计现代方法》第2版,P234。
举报

郎渐海

2018-9-19 12:46:52
引用: 7762642422d 发表于 2018-9-19 21:24
本帖最后由 moyanming2013 于 2015-3-27 16:51 编辑

__DATE__和__TIME__都是C语言预定义宏,其提供了当前编译或编译器本身的信息(换句话说就是你使用的编译器应该是支持上述预定义宏的,其实最基本的编译器都支持的)。

谢谢,回答的真详细,懂了
举报

更多回帖

发帖
×
20
完善资料,
赚取积分