out of memory的问题

guoshimin57 2007-06-05 08:54:29
写了一个程序,分成了十来个文件,用include的方法来组织,才不到100k的内容,在TC2.0下编译竟然报告out of memory。在GCC下编译就没问题。究竟是怎么回事呢?
...全文
336 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
guoshimin57 2007-06-07
  • 打赏
  • 举报
回复
我不是说TC是Windows程序,我的意思是用TC编译的程序是基于Windows类系统的。本来是想只用GCC的,但打印时就麻烦了,拿去别人的Windows系统,格式严重走样了,而且程序要运行给老师看啊~学校除了几台服务器是Linux之外,都是Windows的。当然,如果有办法使在Linux下编辑的源代码和输出在Windows下正常显示的话就最好不过了。
dai_weitao 2007-06-07
  • 打赏
  • 举报
回复
有GCC了还用TC? 楼主成心是不 ?
Wolf0403 2007-06-07
  • 打赏
  • 举报
回复
>> 用程序做毕业设计既然要在Windows下运行,又要在Linux运行,还要做得不要太复杂了。

TC 程序既不是 Windows 程序也不是 Linux 程序。。。
sss_free 2007-06-07
  • 打赏
  • 举报
回复
在TC2.0下编译竟然报告out of memory 和调用malloc有啥关系啊?~~~,晕倒~
guoshimin57 2007-06-07
  • 打赏
  • 举报
回复
我没调用malloc。至于为什么要用TC嘛~我不是计算机专业的,用程序做毕业设计既然要在Windows下运行,又要在Linux运行,还要做得不要太复杂了。否则让答辩时老师会为难。因此没用prj法或makefile法。进行文件操作时,就剩最后那几步的时候就出现了out of memory的问题,郁闷啊~
sss_free 2007-06-06
  • 打赏
  • 举报
回复
想要用TC2.0编译过去,你必须把程序实现代码模块划分好,分到几个C文件中去,然后分别编译到成目标文件,最后连接。
你把一个100k的程序分到include里面一看就是外行
sss_free 2007-06-06
  • 打赏
  • 举报
回复
写了一个程序,分成了十来个文件,用include的方法来组织
====================
请问楼主动不动编译链接?
lindex 2007-06-06
  • 打赏
  • 举报
回复
你在使用malloc的时候一定要保证malloc(n)的n为正整数,否则,由于n会被当成无符号数处理,因此当n<0时,实际上malloc将分配一块为数非常大的内存,在这种情况下,系统满足不了那样的内存分配请求,会出现“out of memory”的情况。你检查一下你程序里头的malloc调用吧。
pipigou 2007-06-06
  • 打赏
  • 举报
回复
你们程序可能真的是 out of memory 了,你用别的编译软件去试试看
060 2007-06-06
  • 打赏
  • 举报
回复
不明白 为什么还是用TC。

问个问题: 在C/C++里,int类型占几个字节, int类型的最大值大约是多少?
iambic 2007-06-05
  • 打赏
  • 举报
回复
16位应该是64K吧?
另外你的文件还会包含标准库的头文件,而标准库的头文件往往是很巨大的。
iambic 2007-06-05
  • 打赏
  • 举报
回复
逐步削减你的文件,找出错误原因,然后贴出来告诉大家。
guoshimin57 2007-06-05
  • 打赏
  • 举报
回复
16位寻址最小也能寻到640K内存啊。我的程序哪能占用这么多内存啊?
Wolf0403 2007-06-05
  • 打赏
  • 举报
回复
TC 是 16位寻址的。
chenyu2202863 2007-06-05
  • 打赏
  • 举报
回复
可能真的out of memory

70,037

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧