今天编译出现下面问题:
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
凯发app官方网站 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值一定很大!
接下来的问题我就不说了, 想办法让这个结构占用的内存变小就没这个问题了。
阅读(3896) | 评论(1) | 转发(0) |