私はVisual Studio 2010を使用しています。スタック上の宣言の最大許容サイズはいくらですか?
私は間違ったエラーを与えていると思います。 配列が、問題は、私は6にTNK_CACHE_SIZEを定義するとき、それは私が時間のコンパイルエラー与えるが、アクセス違反のエラーを持っていない、
ある
struct fpinfo search_buf[TNK_CACHE_SIZE][BUCKETS][B_ENTRIES];
として
#define BUCKETS 2048
#define B_ENTRIES 4096
typedef struct fpinfo
{
unsigned long long offset;
unsigned long length;
char fing_print[33];
}fpinfo;
から定義されます実行時に私はそれに書き込もうとします。
一方、TNK_CACHE_SIZEを3に定義すると、次のコンパイル時エラーが発生します。
1> LINK:致命的なエラーLNK1248:画像サイズ(86CB7000)が最大 許容サイズを超えた(80000000)
1)それがためないながら、なぜそれがコンパイル時に最初の宣言を無視しませんそれは最初のもののちょうど半分だったとき、2番目のものでした。
2)スタック上の宣言の最大許容サイズはいくらですか?
3)は、この許容サイズをプロジェクト内の他のすべてのメモリ割り当てを含めるかこれ以上割り当て可能なメモリ空間と割り当てられることができていない最後のものがあるまで、それは他の後に1つのメモリ割り当てされてい旗がついた?
ここにはマイクロソフトのリンクがあります。http://msdn.microsoft.com/en-us/library/tdkhxaks%28v=vs.71%29.aspx – Alex
リンクに感謝@Alexを忘れました! –