ImageVerifierCode 换一换
格式:PPT , 页数:60 ,大小:164.50KB ,
资源ID:1168757      下载积分:10 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1168757.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(常见错误和程序调试.PPT)为本站会员(国***)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

常见错误和程序调试.PPT

1、 第 16章 常见错误和程序调试16.1 常见错误分析16.2 程序调试要真正学好 C、 用好 C并不容易, “灵活 ”固然是好事,但也使人难以掌握,尤其是初学者往往出了错还不知怎么回事。 C编译程序对语法的检查不如其他高级语言那样严格 (这是为了给程序人员留下 “灵活 ”的余地 )。因此,往往要由程序设计者自己设法保证程序的正确性。调试一个 C程序要比调试一个 PASCAL或FORTRAN程序更困难一些。需要不断积累经验,提高程序设计和调试程序的水平。C语言有些语法规定和其他高级语言不同,学习过其他高级语言的读者往往按照使用其他高级语言的习惯来写 C程序,这也是出错的一个原因。16.1 常见

2、错误分析下面将初学者在学习和使用 C语言 (不包括C+)时容易犯的错误列举出来,以起提醒的作用。这些内容在以前各章中大多已谈到,为便于查阅,在本章中集中列举,供初学者参考,以此为鉴。(1) 忘记定义变量。如:main( ) x=3;y=6;printf(“%dn “, x+y);C要求对程序中用到的每一个变量都必须定义其类型,上面程序中没有对 x、 y进行定义。应在函数体的开头加 int x, y;这是学过BASIC和 FORTRAN语言的读者写 C程序时常见的一个错误。在 BASIC语言中,可以不必先定义变量类型就可直接使用。在FORTRAN中,未经定义类型的变量按隐含的 I-N规则决定其类

3、型,而 C语言则要求对用到的每一个变量都要在本函数中定义 (除非已定义为外部变量 )。(2) 输入输出的数据的类型与所用格式说明符不一致。例如,若 a已定义为整型, b已定义为实型。a=3;b=4 5;printf(“%f %dn“ , a, b);编译时不给出出错信息,但运行结果将与原意不符,输出为0 000000 16402它们并不是按照赋值的规则进行转换 (如把 4 5转换成 4),而是将数据在存储单元中的形式按格式符的要求组织输出 (如 b占 4个字节,只把最后两个字节中的数据按 % d, 作为整数输出 )。(3) 未注意 int型数据的数值范围。一般微型计算机上使用的 C编译系统,对

4、一个整型数据分配两个字节。因此一个整数的范围为-215 215-1,即 -32768 32767。常见这样的程序段:int num;num=89101;printf(“%d“ , num);得到的却是 23565,原因是 89101已超过 32767。两个字节容纳不下 89101,则将高位截去。见图 16.1。即将超过低 16位的数截去。即将89101减去 216(即 16位二进制所形成的模 )。89101-65536=23565。图 16.1有时还会出现负数。例如num=196607;输出得 -1。因为 196607的二进制形式为00 00 00 00 00 00 00 1011 11 11

5、 11 11 11 11 11去掉高位 10,低 16位的值是 -1(-1的补码是:1111111111111111)。对于超过整个范围的数,要用 long型,即改为long int num;num=89101;printf(“%ld“ , num);请注意,如果只定义 num为 long型,而在输出时仍用 “% d”说明符,仍会出现以上错误。(4) 输入变量时忘记使用地址符。如:scanf(“%d%d“ , a, b);这是许多初学者刚学习 C语言时一个常见的疏忽,或者说是习惯性的错误,因为在其他语言中在输入时只需写出变量名即可,而 C语言要求指明 “向哪个地址标识的单元送值 ”。应写成 s

6、canf(“%d%d“ , (5) 输入时数据的组织与要求不符。用 scanf函数输入数据,应注意如何组织输入数据。假如有以下 scanf函数:scanf(“%d%d“ , 有人按下面的方法输入数据:3, 4这是错的。数据间应该用空格来分隔。读者可以用printf(“%d%d“ , a, b);来验证一下。应该用以下方法输入:34如果 scanf函数为scanf(“%d , %d“ , 对 scanf函数中格式字符串中除了格式说明符外,对其他字符必须按原样输入。因此,应按以下方法输入:3, 4此时如果用 “34”反而错了。还应注意,不能企图用scanf(“input a 想在屏幕上显示一行信息:input a

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。