调试结果与构建/运行结果之间的差异 - Netbeans中的C.

时间:2011-05-14 18:43:34

标签: c debugging netbeans product

(这不是作业帮助问题)

我的教授要求我编写一个简单的程序来计算两个线性阵列的点积。那是容易的部分,所以我想。当我在NetBeans IDE 7.0中构建并运行该程序时,函数末尾的print语句为:

  
    
      

点积为1246

             

RUN FAILED(退出值25,总时间:68ms)

    
  

但是当我在调试模式下运行它时,我的输出窗口显示:

  
    
      

点积为1240

    
  

这个程序是我必须在其上构建的其他两个程序的前身(使用Pthreads和OpenMP),因此对我来说,我能让它正常工作并且我没有任何惊喜结果。

任何帮助将不胜感激。我只是不明白为什么会这样。一切看起来都对我不错,但是一双新的眼睛不会受伤。

#include <stdio.h>
#include <stdlib.h>

#define NN 16  //Len of array

main()
{
    int a[NN], b[NN], iVal, dPro;
    int i;
    iVal = 0;
    for(i=0; i<NN; i++) //Loop for building the arrays
    {
        a[i]=1.0*(i);
        b[i]=1.0*(i);
    }
    for(i=0; i<NN; i++) //Loop for computing the dot product
    {
        dPro += a[i]*b[i];
    }

    printf("The dot product is %d \n", dPro);

}

1 个答案:

答案 0 :(得分:2)

您向dPro添加值,但您从未设置其起始值。