发新帖我要提问
12
返回列表
打印

void及void指针的使用与讨论

[复制链接]
楼主: comeon201208
手机看帖
扫描二维码
随时随地手机跟帖
21
tongbu2015| | 2017-12-23 13:59 | 只看该作者 回帖奖励 |倒序浏览
comeon201208 发表于 2017-12-17 11:06
void的含义
void即“无类型”,void *则为“无类型指针”,可以指向任何数据类型。 ...

无类型指针,能指向任何数据类型,在赋值的时候,可以用任意类型的指针对void指针赋值的哈

使用特权

评论回复
22
tongbu2015| | 2017-12-23 14:00 | 只看该作者
可以用void指针来作为函数形参,这样函数就可以接受任意数据类型的指针作为参数。例如:
void * memcpy( void *dest, const void *src, size_t len );
void * memset( void * buffer, int c, size_t num);


终于明白这些函数的为什么这样设计了

使用特权

评论回复
23
zhangbo1985| | 2017-12-23 21:39 | 只看该作者
comeon201208 发表于 2017-12-17 11:31
void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量,让我们试着来定义:
void a;
...

对函数参数的限定的,,这个很长用的呢

使用特权

评论回复
24
uygferfgf| | 2017-12-24 19:07 | 只看该作者
void的功能原来有这么多啊

使用特权

评论回复
25
vivilzb1985| | 2017-12-24 22:56 | 只看该作者
在ANSIC标准中,不允许对void指针进行算术运算如pvoid++或pvoid+=1等。。

使用特权

评论回复
26
shenmu2012| | 2017-12-25 22:15 | 只看该作者
这个Void在程序开发中用的多也是不好理解的哈

使用特权

评论回复
27
chuntian2016| | 2017-12-29 21:17 | 只看该作者
comeon201208 发表于 2017-12-17 11:25
由于void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值,因此还可以用void指针来 ...

这个定义很重要的,,直接使用void的类型,可以被很多类型的参数使用

使用特权

评论回复
28
renzheshengui| | 2018-7-7 14:25 | 只看该作者
当时能看明白 但是用的时候还是总弄错

使用特权

评论回复
29
chuntian2016| | 2018-7-22 21:35 | 只看该作者
这个指针的设计还是比较重要的

使用特权

评论回复
30
vibra2016| | 2018-7-25 22:33 | 只看该作者
comeon201208 发表于 2017-12-17 11:07
void指针使用规范
①void指针可以指向任意类型的数据,亦即可用任意数据类型的指针对void指针赋值。例如:
...

void型的指针的用法需要多注意的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则