Loose-Info.com

Last Update 2019/12/24


TOP - C言語 - stdio.h - フォーマット文字列(fscanf, scanf, sscanf) - 変換指示子 - [

指定された文字セットで構成される非空白文字の連続を代入します。
最後尾への「\0」の付加が行われます。
「[^」で始まる場合は、指定された文字セット以外の文字の連続が代入されることとなります。
「]」を文字セットに含める場合は「[]...]」のように文字セットの最初の文字として「]」を記述します。
代入される引数ポインタはcharへのポインタとなります。

(例)
#include <stdio.h> int main() { char s[100] = "abcde fgABC 12 hi]123"; char s1[10], s2[10], s3[10], s4[10]; int n = sscanf(s, "%[abcdefg] %[a-zA-Z] %[][0-9] %[]a-z0-9]", s1, s2, s3, s4); printf("入力項目数 %d --- 入力内容 : %s, %s, %s, %s\n", n, s1, s2, s3, s4); return 0; }

実行結果
入力項目数 4 --- 入力内容 : abcde, fgABC, 12[], hi]123