各行に1桁を書き込まずに10桁の数字を追加するにはどうすればよいですか.
struct test {
unsigned short telephone[10];
//Some Code Here ...
}
for (j = 0; j < 10; j++) {
scanf("%d", & seats[position - 1].telephone[j]);
}
各行に1桁を書き込まずに10桁の数字を追加するにはどうすればよいですか.
struct test {
unsigned short telephone[10];
//Some Code Here ...
}
for (j = 0; j < 10; j++) {
scanf("%d", & seats[position - 1].telephone[j]);
}
言及する2つのこと、
書く
scanf("%1hu", &seats[position-1].telephone[j]);
// ^
input から 1 つの要素のみを読み取ります。
注:h
は長さ修飾子であり、次のように記述されています。
h
次
d
の 、i
、o
、u
、x
、X
またはn
変換指定子が to または の引数に適用されることを指定type pointer
しshort int
ますunsigned short int
。
C11
§7.21.6.2/p9章からの関連もある(私の強調)
入力項目は、指定されたフィールド幅を超えず、一致する入力シーケンスであるか、そのプレフィックスである入力文字の最長シーケンスとして定義されます。