gpt4 book ai didi

c - Printf 格式说明符

转载 作者:行者123 更新时间:2023-12-04 00:51:47 24 4
gpt4 key购买 nike

我一直在尝试将 printf 的格式拼凑成一种线性格式。以下是否正确理解了可能的 printf 格式?

% <justification: [-]?> <sign: [ +]?>  <alternate: [#]?> 
<padding: [0? num]?> <precision: [.num]?> <modifier: [h|hh|l|ll|L|z|t|j]?>
<format: [c|d(i)|e(E)|f|o|p|x(X)|u|s|g(G)]>

以上顺序和含义是否正确?几个例子是:

printf(" %-10.3s %-+20ld", "Hello!", 14L);

最佳答案

Is the following a correct understanding of the possible printf formats?

“一般”是的,但是例如你“不能”做 %jg或者喜欢 %0#p .

还有%n .

“precision”和“padding”都可以是星号,比如%*s%.*s (但您可以将 num 定义为 ([0-9]+|\*) ...)。

还有 .可以选择后跟一个数字。所以它更像是 <precision: [. num? ]> - 如果只有 .指定,精度取零。

Is the order

- +#0的顺序是无关紧要的,你可以重复它们,所以你可以%-+020d%+0-+++000----20d具有相同的含义(并且 0 在与 - 一起使用时被忽略,所以也有极端情况)。

meanings correct in the above?

上面没有解释。 -不是“justification”(按字面意思理解,一个词?),它是一个标志,使输出在字段内对齐。含义也取决于上下文—— float 的“精度”可能可以理解为逗号后的位数,但“字符串的精度”听起来很奇怪。但一般来说,是的。

关于c - Printf 格式说明符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65748602/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com