适应了这个答案之后,我编写了以下循环,以在名为“ gdb_script.gs”的脚本中简单地在gdb中打印数组。我究竟做错了什么?
set $end=64
while ($i<$end)
print $i
print volfrac($i, :, 1)
set $i=$i+1
end
其中volfrac(:,:,:)是一个fortran数组。我收到错误消息:
gdb_script.gs:14: Error in sourced command file:
A syntax error in expression, near `<$end)'.
另一个答案完全没有抓住重点。提示是报告的错误:
gdb_script.gs:14: Error in sourced command file:
A syntax error in expression, near `<$end)'.
提示为<$end)
,这意味着while语句中存在语法错误。通过进一步试验,如果将来其他人需要,我将发布结果:
set $ipx=0
set $end=32
while ($ipx .lt. 32)
print $ipx
print ro($ipx, 1)
set $ipx=$ipx+1
end
关键是使用fortran语法进行比较($ ipx .lt。32),而不是通常的“ c”语法($ ipx <32)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句