编程中常见错误类型以及调试技巧

1.编译型错误

  1. 直接看错误提示信息(双击),解决问题。或者凭经验就可以搞定,相对来说较简单
  2. 错误信息无用,双击不出现指定位置

2.链接型错误

  1. 看错误提示信息,主要在代码中找到错误信息中的标识符,然后定位问题所在。一般是标识符名不存在或者拼写错误

3.运行时错误

  1. 最难的错误,能运行成功但结果和自己所想的不符合,即代码内出现问题,这类错误最考验程序员的耐心,要自己慢慢调试寻找错误,所谓大部分时间用来进行调试代码是一点都不带夸张的
  2. 此类错误需要自己错总结经验,凭借经验来说会相对一点简单

4.调试技巧

  1. 熟练自己所用环境的调试技巧
  2. 熟练自己环境的快捷键,会让你操作更加相对便捷

1.编译型错误

  1. 错误一:必须属性”VSIstallDir”缺失或为空
    在这里插入图片描述
    解决方法:选择菜单栏的项目->属性->配置属性->常规->平台集成工具,选择V90编辑为V100,点击确定。之后运行就不会再出现必须属性”VSInstallDir”缺失或为空的错误了。即如图所示:
    在这里插入图片描述
  2. 找不到projectname.exe
    在这里插入图片描述
    解决方法:1、选择菜单栏的项目->属性->配置属性->VC目录->包含目录->编辑 在这里插入图片描述
    添加:matlab安装目录\extern\include,然后点击确定 在这里插入图片描述
    2、选择菜单栏的项目->属性->配置属性->VC目录->库目录->编辑
    添加:matlab安装目录\extern\lib\win64\microsoft在这里插入图片描述

3、选择菜单栏的项目->属性->配置属性->C+±>常规->附加包目录->编辑,添加:libmx.lib;libeng.lib;libmat.lib; 点击确定 在这里插入图片描述

4、选择菜单栏的项目->属性->配置属性->链接器->输入->附加依赖项->编辑,添加:libmx.lib;libeng.lib;libmat.lib; 点击确定

在这里插入图片描述
5、选择菜单栏的解决方案平台,选择x64(倘若没有这个选项,则选择配置管理器->选择平台->新建->选择x64->确定即可)
在这里插入图片描述

补充个 Scanf错误怎么改

在这里插入图片描述

  1. 解决方法一#define _CRT_SECURE_NO_WARNINGS 1
    放在第一行即可在这里插入图片描述
  2. 用scanf_s(前提是vs编译环境下才行,所以不建议使用此方法,了解即可)
    运行结果如下在这里插入图片描述

如若不想每次都主动添加此代码,可以找到自己vs的一个这个文件newc++file
在这里插入图片描述
然后把他给复制在桌面上防止一会更改时出现此类错误在这里插入图片描述
先复制到桌面上然后再用记事本打开把#define _CRT_SECURE_NO_WARNINGS 1
复制到里面保存后再复制到原路径即可在这里插入图片描述

2.链接型错误

此类错误较为简单,同学门按照提示信息进行相关操作即可。

调试技巧相关

最常使用的几个快捷键:
F5
启动调试,经常用来直接跳到下一个断点处。
F9
创建断点和取消断点
断点的重要作用,可以在程序的任意位置设置断点。
这样就可以使得程序在想要的位置随意停止执行,继而一步步执行下去。
F10
逐过程,通常用来处理一个过程,一个过程可以是一次函数调用,或者是一条语句。
F11
逐语句,就是每次都执行一条语句,但是这个快捷键可以使我们的执行逻辑进入函数内部(这是最
长用的)。
CTRL + F5
开始执行不调试,如果你想让程序直接运行起来而不调试就可以直接使用。
在调试开始之后,用于观察变量的值。在这里插入图片描述
在调试开始之后,用于观察内存信息。在这里插入图片描述
查看调用堆栈
通过调用堆栈,可以清晰的反应函数的调用关系以及当前调用所处的位置在这里插入图片描述
查看汇编信息
在调试开始之后,有两种方式转到汇编:
(1)第一种方式:右击鼠标,选择【转到反汇编】:
在这里插入图片描述
第二种方式:在这里插入图片描述
查看寄存器信息
在这里插入图片描述
5.1 实例一

#include<stdio.h>
int main()
{
int i = 0;
int sum = 0;//保存最终结果
int n = 0;
int ret = 1;//保存n的阶乘
scanf("%d", &n);
for(i=1; i<=n; i++)
{
int j = 0;
for(j=1; j<=i; j++)
{
ret *= j;
}
sum += ret;
}
printf("%d\n", sum);
return 0;
}


这时候我们如果3,期待输出9,但实际输出的是15。
why?
这里我们就得找我们问题。

  1. 首先推测问题出现的原因。初步确定问题可能的原因最好。
  2. 实际上手调试很有必要。
  3. 调试的时候我们心里有数。
    在这里插入图片描述

最后调试发现原来每次ret都要重新为1才行

#include<stdio.h>
int main()
{
int i = 0;
int sum = 0;//保存最终结果
int n = 0;
int ret = 1;//保存n的阶乘
scanf("%d", &n);
for(i=1; i<=n; i++)
{
int j = 0;
ret=1;
for(j=1; j<=i; j++)
{
ret *= j;
}
sum += ret;
}
printf("%d\n", sum);
return 0;
}


运行结果如下
在这里插入图片描述
最后希望大家都能写出优秀的代码

  1. 代码运行正常
  2. bug很少
  3. 效率高
  4. 可读性高
  5. 可维护性高
  6. 注释清晰
  7. 文档齐全
    若有兴趣可以关注我的公共号:玩机器的鲁
    进行领取相关编程的资料,你懂的资料。
  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: C语言编程技巧CHM,即C语言编程技巧帮助文档(Compiled HTML Help),是针对C语言编程技巧和知识进行整理和总结形成的帮助文档。 C语言是一种广泛应用于系统软件和应用软件开发的高级编程语言。在C语言编程,掌握一些技巧和知识可以提高代码的效率和可读性。编程技巧CHM可以对这些技巧进行详细讲解和演示,帮助初学者快速入门,同时也为有经验的开发者提供更深入的理解和应用。 编程技巧CHM可能包含的内容有:常用的编码规范和命名规则、优化和调试技巧、常用算法和数据结构等。通过学习和掌握这些技巧,开发者可以更好地组织和设计程序,提高代码的质量和可维护性。 CHM格式的帮助文档具有良好的交互性和可扩展性,可以方便地进行搜索和索引,同时也可以方便地添加自定义的内容和链接。使用CHM格式的编程技巧文档,开发者可以在需要时快速查询和查找相关的内容,提高学习和开发效率。 总之,C语言编程技巧CHM是一种在C语言编程非常有用的资源,能够帮助开发者更好地理解和应用C语言技巧和知识,提高代码的质量和效率。无论是初学者还是有经验的开发者,都可以从受益。 ### 回答2: C语言编程技巧CHM是一本关于C语言编程技巧的电子书,CHM是一种帮助文件格式。本书主要介绍了C语言编程一些常用的技巧和方法,旨在帮助读者提高编程效率和代码质量。 首先,本书介绍了一些常用的C语言编程技巧,例如如何优化代码、避免一些常见编程陷阱等。这些技巧可以帮助读者更加熟悉C语言的特性,以及掌握一些高效而安全的编程方法。 其次,本书还介绍了一些与C语言编程相关的工具和库。例如,介绍了如何使用C语言的标准库函数和数据结构,如何使用常用的开发工具,如编译器和调试器等。这些工具和库可以帮助读者更好地进行C语言编程,并提高开发效率。 此外,本书还讲解了一些常用的设计模式和算法。这些设计模式和算法是C语言编程的一些常用技巧,可以帮助读者更好地解决实际编程的问题。例如,介绍了常用的排序算法、搜索算法以及一些常用的数据结构等。 总而言之,C语言编程技巧CHM是一本对C语言编程非常实用的电子书。通过阅读本书,读者可以学习和掌握一些高效的C语言编程技巧和方法,提高自己的编程水平和能力。无论是初学者还是有一定编程经验的人都可以从本书受益,为自己的C语言编程之路打下坚实的基础。 ### 回答3: C语言编程技巧是指在使用C语言进行编程时,运用一些技巧和方法来提高代码的效率和可读性。下面简要介绍几个常用的C语言编程技巧。 首先是代码注释。良好的代码注释能够提高代码可读性,便于他人理解和维护代码。在编写C语言代码时,应当养成良好的注释习惯,对于每个函数、变量以及复杂的操作,都应有相应的注释来解释其功能和作用。 其次是错误处理和异常处理。在编写代码时,应养成及时捕捉和处理错误的习惯,避免因漏掉错误处理而导致代码的异常运行或崩溃。对于可能出现异常的情况,可以使用条件判断语句来捕捉并处理错误,保证程序的稳定性和健壮性。 另外,利用函数和模块化编程也是提高C语言编程效率的重要技巧。将代码逻辑分成多个函数,使得每个函数只完成特定的功能,降低代码的复杂性,提高代码的可维护性。可以将一些常用的功能封装成独立的模块,以便在其他项目复用。 此外,还有一些常用的编程技巧,如避免全局变量的使用,使用宏定义提高代码的可读性,合理选择循环结构和条件语句等等。 总结来说,C语言编程技巧是一种提高代码效率和可读性的方法和技巧,包括良好的注释习惯、错误处理、模块化编程以及其他一些常用的编程技巧。这些技巧的有效运用可以提高代码的质量和开发效率,是每个C语言程序员需要掌握的基本技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值