当前位置: 首页 > news >正文

中山网站建设哪家便宜在中国做外国网站怎么收钱

中山网站建设哪家便宜,在中国做外国网站怎么收钱,国内网站建设,接外包网站文章目录 Ⅰ 调试的介绍Ⅱ 常用调试快捷键Ⅲ 调试的时候查看程序当前信息⒈查看临时变量的值⒉查看内存信息⒊查看调用堆栈⒋查看汇编信息⒌查看寄存器信息 Ⅳ 观察形参指针指向的数组Ⅴ 易于调试的代码该如何编写⒈const 修饰指针变量⒉良好代码示范 Ⅵ 编程中常见的错误 Ⅰ 调… 文章目录 Ⅰ 调试的介绍Ⅱ 常用调试快捷键Ⅲ 调试的时候查看程序当前信息⒈查看临时变量的值⒉查看内存信息⒊查看调用堆栈⒋查看汇编信息⒌查看寄存器信息 Ⅳ 观察形参指针指向的数组Ⅴ 易于调试的代码该如何编写⒈const 修饰指针变量⒉良好代码示范 Ⅵ 编程中常见的错误 Ⅰ 调试的介绍 1. 什么是调试 调试Debug又称为除错是发现和减少计算机程序或电子仪器设备中程序的错误的一个过程。 2. 调试的基本步骤 发现程序的错误的存在开发 → 测试 → 用户。以隔离、消除等方式对错误进行定位。确定错误产生的原因。提出纠正错误的解决办法。对程序错误允以改正重新测试。 3. Debug 和 Release 的介绍 Debug 称为调试版本它包含有各种调试信息且不作任何优化所占空间更大。Release 称为发布版本此版本进行了优化不包含调试信息用户使用的以及测试人员检测的都是这个版本。 4. 调试环境的准备 在环境中选择 Debug 选项只有在这里才可以进行调试。 Ⅱ 常用调试快捷键 注意以下所有快捷键如果不起作用的话请搭配 FN 键使用。 F5 启动调试用于直接跳到下一个断点处经常和 F9 成对使用。 F9 创建断点和取消断点断点的重要作用可以在程序的任意位置设置断点。这样就可以使得程序在想要的位置随意停止执行从而一步步执行下去。 F10 逐过程调试通常用于处理一个过程一个过程可以是一次函数调用或是一条语句。当碰到函数调用时不会进到函数内部无法观测到函数体内部的细节。 F11 逐语句调试每次都执行一条语句可以进入函数体观察函数内部的细节。 CTRL F5 开始执行不调试用于让程序直接运行起来而不进行调试学习编程初期使用的最多的就是这个。 Ⅲ 调试的时候查看程序当前信息 进入调试之后在调试窗口中才能看到下面的信息。 ⒈查看临时变量的值 在调试开始之后用于观察变量内存放的值的变化。自动窗口与监视窗口都能够观察到局部变量的信息。 自动窗口与监视窗口的区别 自动窗口会自动显示所有局部变量的信息不管你是否需要随着调试的进程自动窗口内所观察的变量有时会自动出现有时又会自动消失。监视需要程序员手动输入想观察谁就输入谁观察的变量不会随着调试的进程而消失强雷建议使用监视窗口来观察局部变量的值。 ⒉查看内存信息 ⒊查看调用堆栈 调用堆栈 调用堆栈反应的是函数的调用关系。后期当遇到很复杂的函数关系的时候就可以使用调用堆栈来理清函数之间的调用关系。 举个栗子 现有以下代码 main 函数调用了 test1test1调用了 test2test2 → test3。而 main 函数又是被其他函数所调用的。函数调用采用的是数据结构中 栈 的先进后出的特性先调用的函数后结束。 ⒋查看汇编信息 查看 C 语言代码所翻译出来的汇编代码。 ⒌查看寄存器信息 用于查看当前运行环境的寄存器的使用信息。 Ⅳ 观察形参指针指向的数组 众所周知在给函数传数组名的时候传递的是数组首元素的地址这样一来的话在函数内部调试的时候只是输入个数组名就不能很好的观察到数组内部的值的变化。 但是只要在我们想要观察的数组指针变量名后面加上 逗号 和 想要观察的元素个数 就可以很好观察到数组内部元素的值了。 二维数组同理 如果将二维数组名作为参数传给函数的话观察函数形参的二维数组指针也就只能观察到原数组第一行的内容。因为二维数组的数组名为第一行的地址。 Ⅴ 易于调试的代码该如何编写 1. 什么是高质量的代码 代码能够正常运行。尽可能少的 BUG不可能没有BUG。可执行效率够高。可读性要强。可维护性高。注释要清晰能让人看得懂。相应文档齐全。 2. 常用编程技巧 使用 assert 断言。 assert 的表达式如果为假则直接结束程序并报错使用 assert 来判断指针是否指向 NULL。 尽量使用 const 修饰变量包括变量和指针变量。养成良好的编码风格。添加必要的注释。避免编码的陷阱。 ⒈const 修饰指针变量 const 可以修饰普通的变量让变量的值无法被修改从而变成常变量本质任然是个变量。 同样的const 也可以用来修饰指针变量。const 修饰指针有两种形式。 对于指针变量来说应该关注的有两点 指针变量本身能不能改指针变量指向的那个变量能不能改。 const 放置的位置就决定了能不能修改这两种值。 1. const 放在 * 的左边 const int* p n; //只要 const 放在 * 的左边这两中写法就都一样。 int const* p n; 限制的是指针指向的内容也就是限制了 *p让指针指向的那个变量的值无法被修改。但是指针变量是可以修改的指针可以指向其他变量。 2. const 放在 * 的右边 int* const p n;限制的是指针变量本身在 p 已经指向了 n 之后p 就不能再被修改为指向其他变量了。但是可以通过指针变量修改指向的内容。 当在 * 的两边都加上 const 之后p 就只能指向 n并且*p 也不能改变 n 的值了。 ⒉良好代码示范 模式实现 strcpy #include stdio.h #include assert.h//我只想改变 str1不想改变 str2 const 保证 src 指针指向的 str2 数组内的值不会一不小心被修改 char* my_strcpy(char* dest, const char* src) {assert(dest src); //当传过来的两个指针为 NULL 时直接结束程序并报错char* ret dest; //保存目的地首元素的地址一会还要传回去while (*dest *src) //直到 *src \0,然后由于是后置再将 \0 也赋值给 dest 为止{;}return ret; //返回 dest 的起始地址 } int main() {char str1[20] ***************;char str2[] hello word!;printf(%s\n, my_strcpy(str1, str2));return 0; }模拟实现 strlen #include stdio.h #include assert.hsize_t my_strlen(const char* str) //防止原数组中得内容不小心被修改 {assert(str); //判断传过来的指针的有效性 (! NULL)const char* end str; //标识字符串末尾while (*end); //当 end 指向 \0 时退出循环return (end - str - 1); //指针 - 指针得到同一块空间的两个地址之间的元素个数//-1 是因为后置 的副作用要把 \0 的那一个元素去掉 }int main() {char str[] hello word!;printf(%zd\n, my_strlen(str));return 0; }Ⅵ 编程中常见的错误 1. 编译型错误 一般为语法错误。这类错误直接查看错误提示信息双击解决问题或者凭借经验就可以搞定。 2. 链接型错误 一般为未包含头文件、符号名函数名、变量名不存在或者拼写错误。看错误提示信息主要在代码中找到错误信息中的标识符然后定位问题所在。 3. 运行时错误 一般为程序运行起来时发现的错误。只能借助调试定位到问题所在这种问题最难解决。
http://www.w-s-a.com/news/391748/

相关文章:

  • 网站优化大计孝感注册公司
  • 设计接单app平台有哪些在线网站seo诊断
  • 兰州网站建设推广现代营销手段有哪些
  • 郴州网站seo优化网络安全哪个培训班比较好
  • 做网站需要记哪些代码企业网站建设思路
  • 重庆自助建站模板网络服务器配置与管理
  • 外贸网站怎样做小程序买量平台
  • 中山精品网站建设机构海外留学网站建设方案
  • 长春网站建设工作如何取消wordpress页脚
  • 忻府网站建设排名网络管理系统官网
  • 张家港外贸网站建设国医堂网站平台建设
  • 水冶那里有做网站的对于网站链接优化有哪些建议
  • 宝安中心地铁站是几号线化妆品网站做的好的
  • 海宁营销型网站设计企业融资是什么意思
  • 淘宝客做网站要钱吗网站开发试题库
  • 10g空间网站做视频网站网站建设找超速云
  • 一元购网站怎么做企业网站源码cms
  • 域名不变 网站改版临沂企业网站建站模板
  • 天河网站建设信科网络外包公司和公司直招哪个好
  • 网站制作哈尔滨聊天系统源码
  • 网站建设朋友圈素材青白江建设网站
  • 红酒网站设计软件设计文档
  • 如何创建网站目录网站申请支付宝接口
  • 网站做区块链然后往里面投钱品牌设计公司收费标准
  • 2022互联网+创新创业项目呼和浩特企业网站排名优化
  • 电子商务类网站建设山西自助建站系统怎么用
  • odoo做网站网站设置专栏有什么好处
  • 局域网内个人网站建设查询企业的网站有哪些
  • 网站建设属于技术开发吗网页制作团队
  • 做家常菜的网站哪个好哪个网站做图片外链