C语言调试环境,vs2017怎么编写c语言并进行调试

  C语言调试环境,vs2017怎么编写c语言并进行调试

  在编程的过程中,经常会出现一系列的bug。发现bug的过程就是调试。

  优秀的程序员就是优秀的侦探。每一次调试都是试图解决一个案例的过程。

  1.什么是bug?计算机程序错误

  2.什么是调试?有多重要?2.1什么是调试?

  调试(英文:Debugging/Debug),又称调试,是在电子仪器设备中寻找并还原计算机程序或程序。

  错误的过程。

  2.2调试的基本步骤

  发现程序错误的存在(发现bug的三类人:程序员、测试人员和用户)

  通过隔离、排除等方法定位错误。(找到错误发生的范围)

  确定错误的原因。

  提出解决方案,纠正错误。

  纠正程序错误并重新测试。

  2.3调试和发布简介。

  Debug通常称为调试版本,包含调试信息,没有任何优化,方便程序员调试程序。占用内存比较多,可以在调试程序的过程中观察信息。

  Release称为release version,它往往会进行优化,使程序在代码大小和运行速度上达到最优,让用户用得好。占用更少的内存。

  代码:

  如果在调试模式下编译,程序的结果是无限循环。

  如果在发布模式下编译,程序没有无限循环。

  两者有什么区别?是因为优化。

  3.3简介。Windows环境调试3.1调试环境的准备

  在环境中选择debug选项,使代码正常调试。

  3.2学习快捷键

  最常用的快捷键:

  F5开始调试,与F9结合使用,常用于直接跳转到下一个断点。(此时,断点不是下一个物理断点,而是一个逻辑断点。)

  F9切换断点(创建和取消断点)

  断点可以设置在程序的任何地方。使程序在期望的位置停止执行,然后逐步执行。按F9再按F5,程序会直接运行到断点处,从而找到错误发生的地方。

  F10是一步一步、一句一句执行的,不会进入函数。

  F11逐语句,即每次执行一条语句,就可以进入函数(这是最常用的)。

  F5开始执行,不进行调试。如果想让程序不调试直接运行,可以直接使用。

  3.3调试时检查程序的当前信息。

  3.3.1检查临时变量的值

  用于在调试开始后观察变量的值。

  3.3.2检查内存信息

  用于在调试开始后观察内存信息。

  3.3.3检查调用堆栈

  通过调用栈,可以清晰地反映出函数的调用关系(逻辑)和当前的调用位置。

  检查装配信息

  4.如何写出好的(容易调试的)代码?4.1优秀代码:

  1.代码正常运行。

  2.bug很少。

  3.高效率

  4.高可读性

  5.高维护性

  6.清除注释

  7.完整的文档

  4.2常用编码技巧:

  1.使用断言(assert)

  使用时需要引用头文件:assert.h,assert()。如果在()中为真,则什么都不会发生;如果是假的,就会报错,更有利于找到错的。

  2.尝试使用const

  3.培养良好的编码风格

  4.添加必要的注释。

  5.避免编码的陷阱。

  4.3 Const的角色

  当const修改指针变量时:

  1.如果const放在*的左边,它修改指针所指向的内容,使指针所指向的内容不能被指针改变。

  改变。但是指针变量本身的内容是可变的。

  2.如果const放在*的右边,它会修改指针变量本身,这样可以确保指针变量的内容不能被修改,而是引用

  指针所指的内容可以被指针改变。

  修改后的数据类型引用常量类型,常量类型的变量或对象的值不能更新,提高了程序的安全性和可靠性。

  5.编程中的常见错误5.1编译错误

  直接看错误信息(双击)解决问题。或者可以用经验来做。比较简单。是一个常规语法错误。

  5.2链接错误

  此时,您只需要定义Add。

  看错误消息,主要是在代码中找到错误消息中的标识符,然后定位问题。通用标识符名称不存在、拼写错误或根本未定义。

  5.3运行时错误

  借助调试,逐步定位问题。最难做的事。

  否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: