私は C の真の初心者ですが、学んでいます!
以前にこの問題に出くわしたことがあり、その理由を尋ねることにしました。そして、私が学べるようにあなたの答えを説明してください.
5 文字を入力して、書いた文字を表示し、元に戻すことができるプログラムを作成しました。例: "asdfg" - "gfdsa"。奇妙なことに、入力された元の文字の後に奇妙な文字が表示されます。
コードは次のとおりです。
char str[5];
char outcome[] = "OOOOO";
int i;
int u;
printf("Enter five characters\n");
scanf("%s", str);
for(i = 4, u = 0; i >=0; u++, i--){
outcome[i] = str[u];
}
printf("\nYou wrote: %s. The outcome is: %s.", str , outcome);
return 0;
「asdfg」と入力すると、「asdfg♣」と表示されますが、これはなぜですか?
お時間をいただきありがとうございます。答えを説明してください:)