一个我无法解决的简单问题...
如何在printf
字符串中打印一个 '%' 字符?下面的代码可以打印,但会同时出现“无效转换”的错误。
printf "\t\t".$hour."00 HRS\t=>\t%.2f\t%.2f\t%.1f\%\n", $total, $max15, ($max15/$total*100);
应该输出类似以下内容:
0000 HRS => 3125.19 898.02 28.7%
根据 printf 的文档,应该使用 %% 而不是 \%。
请使用 %% 代替 \% :)
%% 代表单个百分号
回想起来,有一种简单的替代方法可以达到同样的效果。
将“%”符号作为字符串打印:
printf "\t\t".$hour."00 HRS\t=>\t%.2f\t%.2f\t%.1f%s\n", $total, $max15, ($max15/$total*100), "%";
使用%%来打印一个%符号。
printf "\t\t".$hour."00 HRS\t=>\t%.2f\t%.2f\t%.1f%%\n", $total, $max15, ($max15/$total*100);