※ ChatGPTを利用し、要約された質問です(原文:配列)
CプログラムでStack around the variable 'item' was corruptedエラーが発生する原因
2013/03/29 18:20
このQ&Aのポイント
CプログラムでStack around the variable 'item' was corruptedエラーが発生した場合、配列のインデックスが不正な範囲を指している可能性があります。
このエラーは、配列の範囲外へのアクセスや、メモリオーバーフローの問題によって発生することがあります。
原因としては、forループの条件や配列の要素数の設定ミス、変数の宣言の不備などが考えられます。コードを確認して、配列の範囲内で正しい操作が行われているかを確認してください。
/*10個の数字を受け取り,その中に一致する2つの数字があるかどうかを報告するプログラム*/
#include<stdio.h>
int main(void)
{
int i,j,k;
int item[9];
printf("10個の数字を入力してください\n");
for(i=0;i<10;i++) scanf("%d",&item[i]);
for(j=0;j<10;j++)
{
for(k=j+1;k<10;k++)
{
if(item[j]==item[k]) printf("%dが2つ存在します.\n",item[j]);
}
}
return 0;
}
というプログラムでエラーが出てしまいました.
エラー内容は
Stack around the variable 'item' was corrupted
というものです.
原因を知りたいです.よろしくお願いします.
質問の原文を閉じる
質問の原文を表示する
お礼
本にはitem[0]にもいれられると書いてあるのですが、そうだとすると10個になりませんか?
補足
いま本を読んでいたら解決しました。 要素数を指定してたのですね。解答ありがとうございました。