为MATLAB用户调试编译语言的简介

时间:2013-12-06 00:26:27

标签: c++ python matlab debugging fortran

我已经使用MATLAB很多年了,而且非常精通。我已经习惯了MATLAB调试,你可以跳过行,查看变量及其变化方式,这就是我学习编码的方法。我现在正在研究我使用的许多其他程序,例如SWAN,它们是用FORTRAN,C ++和Python编写的。

我知道你可以用这些语言进行调试;我只是找不到它的介绍,因为它看起来更复杂,与MATLAB调试不同。例如,在FORTRAN中,我知道我的一个同事有不同版本的软件用于执行和调试。

有人知道有关编译语言调试的任何指南吗?什么程序用于调试fortran源代码?是否有针对此类计划的初学者的大量文档?我已经尝试查找Makefiles之类的教程,并且有很多假设的背景知识,我猜测任何人都喜欢计算机编程的1个入门课程。不幸的是,我是一名沿海工程师和我在数值分析课程中学到的所有编程,使用MATLAB来解决问题。

由于

编辑001:

我正在运行Windows 7,Red Hat Linux和OpenSuse Linux。

2 个答案:

答案 0 :(得分:4)

斯坦福大学在所有学科中提供free online courses。看看他们的course catalog。一个相关的课程是“自定进度”Programming Methodology课程,可以在iTunes上好奇地访问,其中包括一个关于调试的部分。

类似于斯坦福的提议,哈佛大学有他们称之为"Open Learning Initiative"的各种免费课程。有趣的可能是Intensive Introduction to Computer Science。请注意,这些课程通常包括录制的讲座,通常可以在闲暇时在线观看。事实上,在上一个链接中,有两个关于调试的视频,您现在可以观看(或收听)。

一旦掌握了一种语言的调试,就可以更轻松地过渡到其他语言。

另外,你可能会得到Python解释而不是编译的注释,但看到它在运行时(就在运行之前)被编译为字节码,可以肯定地说它是在假定当前主流实现的情况下编译的。

让这个问题保持开放一段时间,因为我确信你会从那些实际使用 FORTRAN和Python的人那里得到很多好的建议。对于C ++,我不能抱怨VS调试器,并且有大量的资源,页面和视频。

从MATLAB用户的角度来看,在VS中调试C ++可能会令人沮丧,因为在断点处停止时很难运行任意命令。调试信息格式设置有一个选项,称为编辑和继续的程序数据库,它允许您在调试时更改源代码并将更改应用于您正在调试的应用程序,但稍微思考一下代码可能更多有益的。

您可能还希望在不运行程序的情况下查看static code analysis tools以捕获某些问题(以及让您的程序崩溃以发现它们的轻微不便)!

答案 1 :(得分:1)

在大多数情况下调试Fortran很容易通过使用单个

来完成
print*, <variable>

statments。对于更复杂的问题,一个好的调试器是GDB。要使用它,你必须使用degub FLAG编译程序(如果是gfortran则是-g)。对于GDB,可以在线找到大量的HowTo。 DDD的免费但不是无bug的前端是DDD。