
海外のサイトに掲載されているサンプルコード中のprintfの書式がわかりません。
printf("%2d: %.*s\n", i, ovector[2*i+1] - ovector[2*i], str + ovector[2*i]);
PCREのサンプルの中に出てくるコードですが、上記の「%.*s」は、どういった意味になりますか?
よろしくお願いいたします。
http://stackoverflow.com/questions/1421785/how-c …
No.2ベストアンサー
- 回答日時:
ピリオドに続く数字は精度を表します。
sに精度を指定した場合、出力する文字数を制限することになります。
たとえば、
printf("%.3s", "abcdefg");
とすると、abcが出力されます。
ピリオドのあとに*を指定した場合、精度を引数で指定することになります。
具体的には、
printf("%.*s", 4, "abcdefg");
とすれば、abcdが出力されることになります。
No.1
- 回答日時:
少し(認知度が)マイナーな仕様ですが、調べてみると
http://www.mm2d.net/c/c-01.shtml
http://www.k-cube.co.jp/wakaba/server/format.html
の2つのページに記載されている事から、str + ovector[2*i]から始まる文字列を最大ovector[2*i+1] - ovector[2*i]文字出力する指定のようです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DOHCとOHC
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
CPUの温度を出力するプログラム...
-
ACCESS クエリ→フォーム...
-
cout と cerrの違い
-
Windows Formアプリからコンソ...
-
Microsoft365で作ったword文書...
-
Mac版 Excel VBA PDF出力フォル...
-
ACアダプターの入力と出力のVAの差
-
PD充電器について
-
javacoreの見方について
-
VBAで有効数字の設定
-
Zガンダムのハイザックて、ジェ...
-
FLEXSOLARパネルからAmazonで買...
-
KEYENCEのシーケンスプログラム...
-
ACCESSからExcelへエクスポート...
-
クリスタルレポート8でのFormu...
-
Verilogのinoutをシミュレート...
-
FORTRAN で出力した文字の 左寄...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
DOHCとOHC
-
4Kの外部モニターに出力すると...
-
Microsoft365で作ったword文書...
-
プログラムについての質問です...
-
cout と cerrの違い
-
KEYENCEのシーケンスプログラム...
-
FLEXSOLARパネルからAmazonで買...
-
PD充電器について
-
スマホ充電器購入にあたり
-
ACCESS クエリ→フォーム...
-
コンセントの電力は入力と出力...
-
Windows Formアプリからコンソ...
-
TV出力ポートをOFFにすれば良い...
-
COBOLのMOVEで桁数が異なる場合
-
MMDでavi出力が出来ない
-
CrystalReportの文字列の折返し...
-
Excel VBAで値を変えながら、pd...
-
充電器の表記についての質問で...
-
VBAのExecメソッドで画面を非表...
おすすめ情報