仔细说一下c语言void的具体使用方法,顺便举个例子什么的。谢谢哈。

2024-12-02 16:19:44
推荐回答(2个)
回答1:

void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。   void几乎只有“注释”和限制程序的作用,定义一个void变量没有意义,不妨试着定义:   void a;   这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使void a的编译不会出错,它也没有任何实际意义。   void真正发挥的作用在于:   (1) 对函数返回的限定;   (2) 对函数参数的限定。   众所周知,如果指针p1和p2的类型相同,那么我们可以直接在p1和p2间互相赋值;如果p1和p2指向不同的数据类型,则必须使用强制类型转换运算符把赋值运算符右边的指针类型转换为左边指针的类型。
void的使用
  下面给出void关键字的使用规则:
规则一
  如果函数没有返回值,那么应声明为void类型      在C语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为void类型。
规则二
  如果函数无参数,那么应声明其参数为void。
参考:http://baike.baidu.com/view/1004734.htm

回答2:

void是一种类型.一般用在函数前面.假设我们要写一个函数叫myFunction()
但是在C中既然你要写函数,就要指定函数的返回类型,就是这段函数执行完毕是返回个什么东西.
比如函数myFunction是要计算两个int型(整型)变量a+b的和,那就返回一个int行的值(a,b都是int,加起来还是int)所以我们这么写函数
int myFunction()//前面的int就是返回类型

如果这个函数没有返回类型,比如说干脆就不需要返回个什么值(比如函数里只有个printf 输出一句话),那我们就写
void myFunction()//前面的void就是说,这个函数返回一个类型,这个类型就是没有类型的空类型...

另外void也用于声明一些万能指针. 比如你要用一个指针,但是还不确定这个指针会指向什么类型的变量,那就申请一个void类型的指针,它就叫做万能指针,因为它可以指向任何类型的变量.