24小时热门版块排行榜    

查看: 2446  |  回复: 9

木棉和我

木虫 (职业作家)

[求助] 求解决:C语言代码能正常编译,但不能计算,为什么?含代码 已有1人参与

如题,

两个基本相同的C语言代码,一个能正常运行计算,一个读入定义数组都有问题,但都能正常编译,为什么?

注:
1. 此code2与code1中的区别仅在于后续计算,即在命令注释行‘//以下求出上下界面的velocity’前,两个code没有差异,仅code2中多了一些定义的变量及数组;

2. code1能正常运行,而code2的gdb调试显示与code1中相同的部分都不能正常运行,为什么?且code2中读入文件夹的命令都提示错误,实在无解。

3. 本人因为在学习C语言,gdb调试能力有限,已对code2做了少量调试,并注释了,但对于一些看似正确却提示有问题的,实在不知如何解决,希望大家帮忙运行看一下,给一些指点,谢谢!

4.可能代码写的比较乱,麻烦了。
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com
  • 附件 1 : code1.c
  • 2019-08-17 08:04:55, 10.24 K
  • 附件 2 : code2.c
  • 2019-08-17 08:05:05, 13.92 K

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

NovaMachine

新虫 (小有名气)

让我们这些拿手机的怎么看

发自小木虫Android客户端
2楼2019-08-17 10:24:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木棉和我

木虫 (职业作家)

引用回帖:
2楼: Originally posted by NovaMachine at 2019-08-17 10:24:50
让我们这些拿手机的怎么看

您好!主要是代码太长了,400多行,难以贴出来,谢谢您!
3楼2019-08-17 12:51:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sspa9999

至尊木虫 (著名写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
木棉和我(月只蓝代发): 金币+20, 感谢指导 2019-08-19 21:01:01
月只蓝: 金币+20, 应助指数+1, 感谢热心指导! 2019-08-19 21:01:19
编译只要语法对就能过,运行要逻辑也正确才行,所以很正常。

话说你的C代码看起来是非常Fortran风格啊,这么多数组都是固定维度大小的。上下行对齐也是乱七八糟不统一,别人看起来很费劲。既然用c了,最好还是按照c的风格和约定俗成来比较好
4楼2019-08-17 23:32:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木棉和我

木虫 (职业作家)

引用回帖:
4楼: Originally posted by sspa9999 at 2019-08-17 23:32:40
编译只要语法对就能过,运行要逻辑也正确才行,所以很正常。

话说你的C代码看起来是非常Fortran风格啊,这么多数组都是固定维度大小的。上下行对齐也是乱七八糟不统一,别人看起来很费劲。既然用c了,最好还是按 ...

谢谢您!果然是大神,一眼看出了问题所在,就是数组太大了,听说动态数组(即采用动态内存)可以解决,正在尝试中。另外,我还需要设置一个double a[20][30000][30000]的三维数组,别人告诉我数组太大,可能采用动态数组内存都不够,大神有什么建议没?

我会尽量按照标准来写,现在还在学习中,再次谢谢!
5楼2019-08-18 06:33:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sspa9999

至尊木虫 (著名写手)

数组需要的内存用量可以自己算:sizeof (double)=8 bytes, 8*20*30000*30000=144g bytes. 一般电脑的物理内存很少有这么大,可以加交换空间但比内存慢好几个数量级。更好的办法是分析你的问题,看有没有办法不用这么大的数组,比方说有些地方或者时域上变化不大比较平缓就用大步长或者大网格,这个需要domain knowledge,不是同一领域的人很难给出什么建议

发自小木虫Android客户端
6楼2019-08-19 02:45:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sspa9999

至尊木虫 (著名写手)

还有一种是后面的计算只依赖前面计算好的中间结果,不需要所有以前的数据,所以只要存中间结果就可以,这样就不需要保存前面所有的历史数据,也能省内存

发自小木虫Android客户端
7楼2019-08-19 02:50:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
月只蓝: 金币+10, 感谢指导 2019-08-19 21:01:47
引用回帖:
5楼: Originally posted by 木棉和我 at 2019-08-18 06:33:53
谢谢您!果然是大神,一眼看出了问题所在,就是数组太大了,听说动态数组(即采用动态内存)可以解决,正在尝试中。另外,我还需要设置一个double a的三维数组,别人告诉我数组太大,可能采用动态数组内存都不够,大 ...

你需要具体问题具体分析,这么大的数组内存得100多G,你的电脑有没有这么大内存?
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
8楼2019-08-19 17:12:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木棉和我

木虫 (职业作家)

引用回帖:
7楼: Originally posted by sspa9999 at 2019-08-19 02:50:45
还有一种是后面的计算只依赖前面计算好的中间结果,不需要所有以前的数据,所以只要存中间结果就可以,这样就不需要保存前面所有的历史数据,也能省内存

谢谢!我现在好像就是采用的这种方法,采用动态数组,并数组值采用set data与get data的方式。
9楼2019-08-21 23:51:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

木棉和我

木虫 (职业作家)

引用回帖:
8楼: Originally posted by libralibra at 2019-08-19 17:12:59
你需要具体问题具体分析,这么大的数组内存得100多G,你的电脑有没有这么大内存?...

没有呢!应该是我代码写的不科学,所以用了这么个数组。我现在忽略一些数据。谢谢您!
10楼2019-08-21 23:52:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 木棉和我 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 中科院海洋所招收海洋材料相关领域博士研究生及研究助理 +3 sujiner 2026-10-08 4/200 2026-10-14 20:40 by qicaiyun
[论文投稿] 二审4个多月了还是Awaiting Reviewer Scores 10+3 纳斯达克ML 2026-10-11 4/200 2026-10-14 17:30 by babero
[有机交流] OpenAI又攻克数学难题了,离AI做有机合成还有多远? +8 wangyl_123 2026-10-10 13/650 2026-10-14 15:12 by zuesli
[硕博家园] 极限拉扯,如何抉择 +10 Isak0320 2026-10-12 14/700 2026-10-14 11:39 by thegarfield
[教师之家] 课题组会帮你通过考核么? +4 好运来~9527 2026-10-10 7/350 2026-10-13 08:41 by xli1984
[基金申请] 入职后第一次管课题组的专利缴费,对账才发现官费比别人多掏了一倍 +6 13108017953 2026-10-08 6/300 2026-10-12 20:07 by w3w3y3
[公派出国] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 9/450 2026-10-11 22:34 by XQNyDCa1Tk5n
[公派出国] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:26 by XQNyDCa1Tk5n
[找工作] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 22:26 by XQNyDCa1Tk5n
[教师之家] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 22:06 by XQNyDCa1Tk5n
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 (EPI+-1)(金币-50) +5 qR2AdCWTVtkw 2026-10-09 10/500 2026-10-11 14:25 by VOMexwnDzOFZ
[教师之家] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 (EPI+-1)(金币-50) +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 14:05 by VOMexwnDzOFZ
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:51 by VOMexwnDzOFZ
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 qR2AdCWTVtkw 2026-10-09 8/400 2026-10-11 13:45 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:54 by VOMexwnDzOFZ
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 qR2AdCWTVtkw 2026-10-09 7/350 2026-10-11 10:34 by VOMexwnDzOFZ
[考博] 招收博士生一名 +3 mandolin 2026-10-10 3/150 2026-10-11 10:21 by 不是山谷!
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 qR2AdCWTVtkw 2026-10-09 4/200 2026-10-11 03:14 by M0zrYVSAnxpE
[有机交流] 各位大佬,路线设计求助 +6 zapen 2026-10-08 8/400 2026-10-10 15:59 by zapen
[有机交流] 我应该选哪条合成路线让实验成功率高一些? +5 jing816y 2026-10-08 9/450 2026-10-10 09:05 by zapen
信息提示
请填处理意见