Dev-C++单步调试方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38371360/article/details/85641970

前言

最近在看FishC大佬的C++教程,遇到一堆问题,慢慢写吧。

如何使用Dev-C++软件调试

调试程序如下:

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

void main()
{
      int i;
      int sum = 0;
      char ch;

      printf("请输入一串整数和任意数目的空格: ");

      while( scanf("%d", &i) == 1 )	//stdlib中的scanf用来接收,如果接收正常,返回值为1 
      {
            sum += i;

            while( (ch=getchar()) == ' ' )// 如果截取到空格,while语句不执行任何操作 即为屏蔽空格 
                  ;
            if( ch == '\n' ) //如果接收到空格则跳出循环 
            {
                  break;
            }

            //ungetc( ch, stdin );//将变量ch中存放的字符退回给stdin输入流。 
            /*
            如果注释掉上面这行,程序输出将会错误,比如输入22,33,33,44时正确答案应该是132,但实际只得到了32.
			为什么呢?因为只进行了计算22,3,3,4共32,而其将第一个3,第一个4都丢弃掉了.
			*/
            

      }
      
      printf("结果是: %d", sum);
      printf("\n");
      system("pause");
}

Dev-C++软件版本:v5.11

 在调试上述程序的时候,

第一步-添加断点

添加断点,即单机左侧,整行代码变红即为已经添加成功。

第二步-添加变量

添加一个你需要观察的变量,选中这个变量,右击选择“添加查看”即可

第三步-调试运行

点击调试按钮

跳出命令行窗口

按下回车键即可。

第四步-单步调试

此时点击下一步按钮,进行单步调试,

 可以看到左侧调试框中出现了之前设置的观察变量的值。

此时可以观察到变量i的变化情况,12, 4,6,8加起来刚好是30。所以需要添加一行代码

ungetc( ch, stdin );

用处是将变量ch中存放的字符再退回给stdin输入流,而不至于丢失。

猜你喜欢

转载自blog.csdn.net/weixin_38371360/article/details/85641970