C编程中的“void”是什么意思?在什么情况下使用?

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-05-01

void在C语言里是指不带返回值的意思。跟函数一起用。

1.void的含义

void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。

这行语句编译时会出错,提示“illegal use of type 'void'”。不过,即使void a的编译不会出错,它也没有任何实际意义。

void真正发挥的作用在于:

(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;

而void *则不同,任何类型的指针都可以直接赋值给它,无需进行强制类型转换:

void *p1;

int *p2;

p1 = p2;

但这并不意味着,void *也可以无需强制类型转换地赋给其它类型的指针。因为“无类型”可以包容“有类型”,而“有类型”则不能包

容“无类型”。道理很简单,我们可以说“男人和女人都是人”,但不能说“人是男人”或者“人是女人”。下面的语句编译出错:

void *p1;

int *p2;

p2 = p1;

提示“'=' : cannot convert from 'void *' to 'int *'”。

2.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函数。

补充:void 中文翻译为"无类型"。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。

void的字面意思是"无类型",void *则为"无类型指针",void *可以指向任何类型的数据。

在C语言中,凡不加返回值类型限定的函数,就会被编译器作为返回整型值处理。但是许多程序员却误以为其为void类型。



  • void在c语言中什么意思
    答:void在c语言中的意思是无类型。void常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。代表任意类型,而不是空的意思。void * 是void类型的指针。void类型的指针的含义是:这是一个指针变量,该指针...
  • C编程中的“void”是什么意思?在什么情况下使用?
    答:void在C语言里是指不带返回值的意思。跟函数一起用。1.void的含义 void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。这行语句编译时会出错,提示“illegal use of type 'void'”...
  • void是什么意思?
    答:void是C语言关键字,说明函数没有返回值,oop是函数名,是用户自定义标识符。void表示空类型,它跟int,float是同地位的,一般用在没有返回值的函数中。比如:void main (),主函数完了不用写return 语句,但是如果是int...
  • C语言中的函数类型void什么详细意思?
    答:void意思是主函数(main)的数据类型空返回值。void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。没有返回值的函数:功能只是完成一个操作,应将返回值类型定义为void,函数体内可没有...
  • VOID是什么意思
    答:void是C语言中的一个关键字,字面意思是“无类型”,常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明,有注释和限制程序的作用。void *可以指向任何类型的数据,在C语言中,凡不加返回值类型限定的...
  • c语言中void什么意思?具体怎么用?
    答:void 被翻译为"无类型",相应的void * 为"无类型指针"。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。void 的作用 1.对函数返回的限定,这种情况我们比较常见。2.对函数参数的限定,这种情况...
  • void代表什么意思?
    答:void * 是void类型的指针。void类型的指针的含义是:这是一个指针变量,该指针指向一个 void类型的数。在函数的参数列表和返回值中,void代表的含义是: 一个函数形参列表为void,表示这个函数调用时不需要给它传参。返回...
  • c语言void的意思是什么?
    答:c语言void的意思是无返回数值。void真正发挥的作用在于:对函数返回的限定。对函数参数的限定。如果把void和int,char,double等类型放到一起理解的话,首先还是那句揭示本质的话:变量类型就是固定大小内存块的别名,那么void...
  • c语言中void是什么意思?有什么用处?
    答:void 被翻译为"无类型",相应的void * 为"无类型指针"。常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明。void 的作用 1.对函数返回的限定,这种情况我们比较常见。2.对函数参数的限定,这种情况...
  • c语言中void什么意思
    答:C语言中,void是一个特殊的关键字,表示无类型。当它作为函数返回类型时,表示函数不返回任何值。当它作为函数的参数类型时,表示函数不接受任何参数。虽然void表示无类型,但是它仍然是一种类型一个变量不能被声明为void类型...