电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

c语言中void的作用

c语言中void的作用_第1页
1/6
c语言中void的作用_第2页
2/6
c语言中void的作用_第3页
3/6
1.概述 许多初学者对C/C++语言中的v oid 及v oid 指针类型不甚理解,因此在使用上出现了一些错误。本文将对v oid 关键字的深刻含义进行解说,并 详述v oid 及v oid 指针类型的使用方法与技巧。 2.v oid 的含义 v oid 的字面意思是“无类型”,v oid *则为“无类型指针”,v oid *可以指向任何类型的数据。 v oid 几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个 v oid 变量,让我们试着来定义: v oid a; 这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使v oid a的编译不会出错,它也没有任何实际意义。 v oid 真正发挥的作用在于: (1) 对函数返回的限定; (2) 对函数参数的限定。 我们将在第三节对以上二点进行具体说明。 众所周知,如果指针p1 和 p2 的类型相同,那么我们可以直接在p1 和 p2 间互相赋值;如果 p1 和 p2 指向不同的数据类型,则必须使用强制类型 转换运算符把赋值运算符右边的指针类型转换为左边指针的类型。 例如: float *p1; int *p2; p1 = p2; 其中p1 = p2 语句会编译出错,提示“'=' : cannot convert from 'int *' to 'float *'”,必须改为: p1 = (float *)p2; 而 v oid *则不同,任何类型的指针都可以直接赋值给它,无需进行强制类型转换: v oid *p1; int *p2; p1 = p2; 但这并不意味着,void *也可以无需强制类型转换地赋给其它类型的指针。因为“无类型”可以包容“有类型”,而“有类型”则不能包 容“无类型”。道理很简单,我们可以说“男人和女人都是人”,但不能说“人是男人”或者“人是女人”。下面的语句编译出错: void *p1; int *p2; p2 = p1; 提示“'=' : cannot convert from 'void *' to 'int *'”。 3.void 的使用 下面给出 void 关键字的使用规则: 规则一 如果函数没有返回值,那么应声明为 void 类型 在 C 语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为 void 类型。例如: add ( int a, int b ) { return a + b; } int main(int argc, char* argv[]) { printf ( "2 + 3 = %d", add ( 2, 3) ); } 程序运行的结果为输出: 2 + 3 = 5 这说明不加返回值说明的函数的确为 int 函数。 林锐博士《高质量 C/C++编程》中提到...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

c语言中void的作用

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部