08void
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* 类型的指针可以接受任意类型的指针值
08void的更多相关文章
随机推荐
- ios初级必看视频
http://pan.baidu.com/share/link?shareid=3315997225&uk=4113970285
- 探索软件工程道路上的我II (Θ∀Θ#)
------作业要求------ 第一版本程序Prog1:+ 给定一个数组,实现数组元素求和:具体要求:实现对一维数组(a[100])的所有元素相加运算.+ 数据准备:a)数组长度:100:b)数组数 ...
- Win10/UWP新特性—Drag&Drop 拖出元素到其他App
在以前的文章中,写过微软新特性Drag&Drop,当时可能由于处于Win10预览版,使用的VS也是预览版,只实现了从桌面拖拽文件到UWP App中,没能实现从UWP拖拽元素到Desktop A ...
- update the UI property cross thread
this.Invoke((MethodInvoker)delegate { txtResult.Text = sbd.ToString(); // runs on UI thread });
- PAT (Advanced Level) Practise:1002. A+B for Polynomials
[题目链接] This time, you are supposed to find A+B where A and B are two polynomials. Input Each input f ...
- DNS的查询流程
我们可以通过一个命令了演示,同时进行抓包. 在OS X可以用dig命令进行查询追踪. dig @8.8.8.8 www.baidu.com 看看输出会是什么呢 ; <<>> D ...
- xmind的第十一天笔记
- WebAPI的Get和Post访问
/// <summary> /// MVC 调用webapi接口返回框架快捷按钮和一级菜单(Get) /// </summary> /// <param name=&qu ...
- netezza 数据库 取 季初 季末 时间
-- 取季初那一天 select date_trunc( 'quarter',cast('20150820' as date)) -- 取季末那一天 select add_months(date_tr ...
- linux vsftp配置
1.rpm -q ftp 查看是否安装ftp服务器 2.yum install vsftp 安装ftp服务器 3.修改配置文件/etc/vsftpd 下面的 ftpusers和user_list,这两 ...