c语言里 void在什么时候起作用

来源:百度知道 编辑:UC知道 时间:2024/06/03 06:02:12
我有点搞不清楚 题目里有时候起作用 有时候不起作用

void 是一种通用类型,可作为返回类型,函数形参。
1. 作为返回类型时,如果没有返回,void就没什么意义;你如果返回了具体值(或指针等),这时void有含义,说明是通用类型,可以将返回值强转为任意其他类型,理论上不会有语法错误。
2. 作为形参时,可以传入,多种类型的形参可以被传入。如int memcmp ( const void *buf1,
const void *buf2 , size_t count );等。
3. 可以自定义void 类型的参数,这时也是有意义的。

void是指空函数,表明该函数没有返回值,大部分C语言的主函数都是此类型。
或者你把问题说得更清楚些。

空类型

比如你想用一个函数同是改变主函数中多个实参的值,就可以用指针,这时的函数的类型就可以使void型

void func(void){}
1.第1个void表示没有返回值,函数体中可以有return;但是return 后面不能跟任何变量或者常量,仅仅是为了跳出函数体用的
2.第2个void表示参数列表为空,也就是没有参数

对于第1点,如果函数名前什么返回类型都不写的话,C中表示返回int类型的值,C++中不允许这么写
对于第2点,有void在C和C++中都表示没有参数,如果什么都不写(连void也不写的话),C中表示可以用任意数量和类型的参数,C++中表示没有参数(C++中写void和什么都不写是一样的)

void(空类型)是返回类型,在函数声明时使用,表示这个函数运行结束后不返回任何结果。我不明白你说的起作用是什么意思。