ホームページ > バックエンド開発 > C++ > printf() を使用して文字列から印刷する文字数を指定する方法

printf() を使用して文字列から印刷する文字数を指定する方法

Linda Hamilton
リリース: 2024-11-30 14:57:12
オリジナル
642 人が閲覧しました

How to Specify the Number of Characters to Print from a String using printf()?

printf() で印刷する文字数を指定する

次のような疑問が生じます。printf() には次のことを可能にするメカニズムはありますか?文字列から印刷する文字数を指定しますか?これを、整数の小数点以下の桁数を指定することに例えることもできます。例:

printf ("Here are the first 8 chars: %s\n", "A string that is more than 8 chars");
ログイン後にコピー

この行は次のように出力する必要があります:

Here are the first 8 chars: A string
ログイン後にコピー

Solution

これを実現するには、主に 2 つのアプローチがあります。 C.

方法 1: 基本アプローチ

printf ("Here are the first 8 chars: %.8s\n", "A string that is more than 8 chars");
ログイン後にコピー

方法 2: 多用途なアプローチ

printf ("Here are the first %d chars: %.*s\n", 8, 8, "A string that is more than 8 chars");
ログイン後にコピー

このアプローチでは、長さが printf() の int 引数として提供されます。 。形式内の '*' は、引数から長さを取得するリクエストとして解釈されます。

拡張表記

別の表記も使用できます:

printf ("Here are the first 8 chars: %*.*s\n",
        8, 8, "A string that is more than 8 chars");
ログイン後にコピー

「%8.8s」と同様に、この表記法でも実行時に最小長と最大長を指定できます。これは、次のようなシナリオで特に役立ちます。

printf("Data: %*.*s Other info: %d\n", minlen, maxlen, string, info);
ログイン後にコピー

printf() の POSIX 仕様では、これらのメカニズムの詳細な説明が提供されています。

以上がprintf() を使用して文字列から印刷する文字数を指定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート