今天编译出现下面问题:
t9.exe : warning LNK4084: total image size 419475456 exceeds max (268435456); image may not run
我的环境:
Microsoft Windows 2000 [Version 5.00.2195]
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 12.00.8168 for 80x86
Copyright (C) Microsoft Corp 1984-1998. All rights reserved.
找了好半天不知道为什么, 看下面的事例:
#include
#define KK_LEN (400*1024*1024)
typedef struct
{
unsigned char tt[KK_LEN];
} KK;
static KK aa;
int main(int argc, char **argv)
{
aa.tt[0] = aa.tt[KK_LEN - 1] = 'a';
printf("sizeof(KK) = %d \n", sizeof(KK));
return (0);
}
感觉自己很傻, 这地方的KK结构可能在你的系统中是个非常复杂的其他结构, 但它的sizeof值一定很大!
接下来的问题我就不说了, 想办法让这个结构占用的内存变小就没这个问题了。
阅读(3943) | 评论(1) | 转发(0) |