配列 "ones"のサイズは10で、それぞれ最大5文字にすることができます。 3の出力は "threefour"、最大文字は5、 "3"のサイズは5です。なぜ "threefour"を印刷するのですか?[3]? コードは次のとおりです。配列のインデックスが3のときは "threefour"、インデックスが7のときは "seveneightnine"の出力はなぜですか?
#include<stdio.h>
#include<string.h>
int main(){
char input[8];
printf("Enter the integer: ");
scanf("%c",input);
char ones[10][5]={"zero","one","two","three","four","five","six","seven","eight","nine"};
printf("%d\n",input[0]-'0');
puts(ones[3]);
return 0;
}
出力: 整数を入力します:あなたは、範囲外のputs()
のアクセスを持っていることによって未定義の動作を呼び出した3 threefour
コードを画像として投稿しないでください。質問に直接コードとしてコードを投稿してください。 – MikeCAT
ようこそstackoverflowは、[良い質問をするにはどうすればいいですか?](http://stackoverflow.com/help/how-to-ask)を読んでコードサンプルを提供してください –
Ohad Eytanありがとうございます。 – Ankesh