• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ポインタのエラー?)

ポインタのエラー?

このQ&Aのポイント
  • 配列とポインタを使って多数桁の加算をするプログラムでエラーが発生します。
  • 初心者なのでコードの書式がばらばらで読みにくいです。
  • メモリ領域の解放も行っています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

a=(int *)calloc(N+1,sizeof(int)); ... であることから、確保されたのは *(a+0) ... *(a+N) ところが for(i=(N+1);i>=0;i--){ *(result+i)=*(a+i)+*(b+i)+carry; ここで *(a+N+1) にアクセスします。 確保した領域を越えていませんか?

StudentYuta
質問者

補足

回答ありがとうございます。 ご指摘のとおりでした。 for(i=N;i>=0;i--) と変更したところエラーも出ず、正確に演算できました。 これから関数化してみたいと思います。

関連するQ&A