void
void
void修饰函数返回值和参数
- 如果函数没有返回值,那么应给将其声明为void
- 如果函数没有参数,应该声明其参数为void
不存在void类型的变量
void指针的意义
- C语言规定只有相同类型的指针可以相互赋值
- void* 指针作为作为左值用于“接收”任意类型的指针
- void* 指针作为右值使用时需要进行强制类型转换
例子:void *实现MemSet
#include <stdio.h>
void MemSet(void* src, int length, unsigned char n)
{
unsigned char* p = (unsigned char*)src;
int i = 0;
for(i=0; i<length; i++)
{
p[i] = n;
}
}
int main()
{
int a[5];
int i = 0;
MemSet(a, sizeof(a), 0);
for(i=0; i<5; i++)
{
printf("%d\n", a[i]);
}
return 0;
}
小结
- void是一种抽象的数据类型
- void类型不能用于定义变量
- void类型用于声明函数无参数
- void类型用于声明函数无返回值
- 可以定义void类型的指针
- void* 类型的指针可以接受任意类型的指针值