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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C源程序常见错误分析Word文档格式.docx

1、unsigned int addition (unsigned int n)unsigned int i;unsigned int sum;for (i=0;iy ? x:y)在上例的程序中,max函数在main函数之后定义,在调用之前又没有说明,因此出错。应在调用前对函数进行说明:float max (float x,float y);return (xy);也可以将函数max在函数main之前定义。23、误认为形参值的改变会影响实参的值int x=3,y=4;swap(x,y);%d,%d,x,y);int swap (int x,int y)int z;z=x;x=y;y=z;在上例中,

2、设计者的意图本想是利用swap函数交换x和y的值,但是由于实参和形参之间单向传递,在函数swap中改变了x和y值,main中的x和y是不会改变的。可以改为使用指针的形式,如下:int *p1,*p2;p1=&x ; p2=&y;swap(p1,p2);int swap (int *p1,int *p2)z=*p1;*p1=*p2;*p2=z;虽然函数swap在调用函数之后定义,而且在函数main调用之前又没有说明,但是由于swap返回值为整型,C语言规则返回值为整形的函数在调用之前可以不必说明,因此本例中是符合C语法规定的。24、函数的实参和形参类型不致。还是使用上例:int swap (in

3、t p1,int p2)z=p1;p1=p2;p2=z;C要求实参与形参的类型一致,一个为指向整型变量的指针,另一个为整型变量,类型不同,因此编译出错。25、不同类型的指针混用char x=3,*p1;int *p2;x;p2=p1;在上例中,设计者本意是想将指针p1所指的值赋p2,但是由于p1与p2所指向的类型不同,不能赋值。在赋值时必须进行强制类型转换。如:p2=(int *)p1;,*p1,*p2);指向不同类型的指针变量进行强制转换后赋值,在C中是常用的,例如,用malloc函数开辟的数据存储单元,函数的返回值是一个空指针(void),需要用强制转换成指向所需存储类型,如指向一个结构体

4、,用以组成一个链表:struct str int a; struct str *next; *p1; 用户程序列p1=(struct str *)malloc (size_t,size)在ICCAVR中,malloc函数返回的是void类型的指针,将其强制转换为struct str类型的结构体指针。26、混淆数组与指针变量的区别int i,a5;,a+);在上例中,设计者意图通过a+的操作,引用a数组的不同元素。由于C规定数组名代表数组的首地址,它的值是一个常量,因此用a+是错误的。应改为用指针变量来实现,如:int i,a5,*p;,p+);或:int a5,*p;for (p=a;pa+5;p+)27、混淆结构体类型与结构体变量的区别struct worker unsigned char num; char name20; ;worker.num=1;在上例中,只是说明了一种struct worker的结构,但是C编译器并没有为这种类型的结构体变量开辟存储空间,因此不能对结构体类型赋值。应用该类型定义了一个结体类型的变量后,才能对这个变量赋值,应改为:struct worker work;work.num=1;u

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1