5

次のように、Perlで右寄せされた数値を印刷するにはどうすればよいですか?

a=   1
b=  22
c= 333
d=4444  
4

3 に答える 3

10

このようにしてみてください。

printf ("%4d\n",1);
printf ("%4d\n",11);
printf ("%4d\n",111);
printf ("%4d\n",1111);
于 2012-01-05T07:07:44.440 に答える
5

このための公式リソースはperldoc -f sprintf で、例の素晴らしい要約があります:

例えば:

  printf '<% d>',  12;   # prints "< 12>"
  printf '<%+d>',  12;   # prints "<+12>"
  printf '<%6s>',  12;   # prints "<    12>"
  printf '<%-6s>', 12;   # prints "<12    >"
  printf '<%06s>', 12;   # prints "<000012>"
于 2012-01-05T09:52:01.303 に答える
2

printf「フィラー」として精度とスペースを使用します。

printf "a=% 4d\n", 1;
printf "b=% 4d\n", 22;
于 2012-01-05T07:06:37.467 に答える