1. ホーム
  2. c

[解決済み] printfの"%.*s "とはどういう意味ですか?

2022-03-04 03:51:13

質問

あるコードスニペットを入手したのですが、その中に

printf("%.*s\n")

は何をするのでしょうか? %.*s の意味は?

どのように解決するのですか?

アスタリスク( * ) に幅指定子/精度を渡すことができます。 printf() をフォーマット文字列にハードコーディングするのではなく、すなわち

void f(const char *str, int str_len)
{
  printf("%.*s\n", str_len, str);
}