IDE可以找到逻辑错误吗?

时间:2015-05-09 00:26:01

标签: visual-studio ide logic

一个好的IDE(例如Visual Studio)能找到基本的逻辑错误吗?

或者是否存在“基本”逻辑错误并且IDE无法检测到所有这些错误?

2 个答案:

答案 0 :(得分:1)

是的,某些IDE(如Visual Studio)具有连续的语法检查,可以发现一些逻辑错误。但是,如果代码中存在奇怪的内容,则只能发现逻辑错误,没有AI试图弄清楚代码实际上要做什么。

例如,如果您在Visual Studio中使用C#方法编写它:

int a = 1;
int b = 2;

Console.WriteLine(a + a);

然后IDE会注意到你从未使用变量b,并在变量下面以波浪线的形式发出警告。指向它将显示消息The variable 'b' is assigned, but its value is never used

IDE无法知道您是打算输出a + b而不是a + a,而只是使用a + a并不足以发出警告,但它可以看到您创建了一个变量b,并且您可能打算将其用于某些内容。

答案 1 :(得分:1)

不是。

有时它会发现我认为代码路径可能永远不会执行。

int x = 9;
if (x != 9)
{
    foo();
}

它可能会告诉你,你已经宣布了一些不使用它的东西。这是你可以抓住自己的东西。但是,真正的功能是在调试器中,您可以使用“监视”或本地/自动,并在任何范围内按照步进/退出/关注代码,查看它们何时更改,并自行更改值以查看需要什么即将发生。这是测试逻辑的好方法。在汇编中,您可以将代码移回几行并重复它...它不能保证工作,但您可以覆盖任何内容。