出力を作成できる次のプログラムへのユーザーからの入力となるものを理解するために、あなたの助けが必要です:U%ae'$ffq' ong string
int main(void) {
int i=0;
char j[22]="This is a long string", k[3];
scanf("%2s ", k);
sprintf(j, k);
printf("%s", j);
for (; i< 21; printf("%c", j[i++]))
;
return 1;
}
私はいくつかのことを理解していません:
k はユーザーから 2 文字しか取得でき"%2s"
ません。これはどういう意味ですか? 次に、j が指す配列に、配列 k が指すコンテンツを書き込むので、j
は k を指すわけではありませんが、j[5]
それでも取得できi
ます。j[0], j[1]
したがって、入力が2文字に切り刻まれ、入力からの2文字になり、j[i]
残りが「これは長い文字列」の元の残りになるため、この入力を取得する方法がわかりません。