【初心者歓迎】C/C++室 Ver.19【環境依存OK】
■ このスレッドは過去ログ倉庫に格納されています
0557デフォルトの名無しさん
2005/07/11(月) 17:04:06ループ処理の中で呼び出されるある関数の中で10Mくらいのサイズの変数を使いたいのですが
mallocしても、char data[10000000]="";としても、
数回の実行でセグメンテーション違反が出てしまいます。
mallocの場合は一度ずつフリーしているし、char dataで用意した場合は一度実行したらreturnでブロックの外に行っているので
メモリ領域は解放されているはずなのですが・・。
取得するメモリ領域を小さくするとループされる回数が増える(セグメンテーション違反のタイミングが遅れる)から
メモリ不足が原因だと思うのですが、マシンの空きメモリは60Mくらいあって、最大10Mのメモリ取得なら問題無いはずだし。
どんな原因が考えられますか?
■ このスレッドは過去ログ倉庫に格納されています