我已经阅读并重新阅读了有关 matlab 中函数sprintf的帮助,但我不了解有关此函数的所有内容以及他们谈论的格式。
我在问自己函数格式背后的逻辑。
如果我运行示例
sprintf('%05d%s%02d%s%02d',546,'.',1,'.',3)
我明白了
00546.01.03
这是逻辑,因为第一个数字(546)写成一个整数和 5 位数字,第二个是一个字符,依此类推......但如果现在我试试这个
sprintf('%05d%s%02d%s%02d',546,'.',1,'.',3,4)
我明白了
00546.01.0300004
第一部分与上面相同......但它的最后一部分(00004)具有格式'%05d',对应于我在函数参数中输入的第一种格式。我的问题是第一种格式是否成为“默认”格式?
通过尝试这个
sprintf('%05d%s%02d%s%02d',546,'.',1,'.',3,4,56)
得到这个
00546.01.03000048
我认为答案是否定的……但是为什么呢?那么这些论点背后的逻辑是什么?
谢谢你的帮助 !