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