社区
C++ 语言
帖子详情
void*的函数和指针的问题
lswx
2005-02-11 12:44:14
void *
Malloc(int size)
{
void *ptr;
if ( (ptr = malloc(size)) == NULL)
printf("malloc error");
return(ptr);
}
-----------------------------
问题:一般什么时候用void*函数和指针,有什么优缺点?
...全文
608
20
打赏
收藏
void*的函数和指针的问题
void * Malloc(int size) { void *ptr; if ( (ptr = malloc(size)) == NULL) printf("malloc error"); return(ptr); } ----------------------------- 问题:一般什么时候用void*函数和指针,有什么优缺点?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lswx
2005-03-01
打赏
举报
回复
谢谢楼上各位回答!
nicknide
2005-03-01
打赏
举报
回复
不多说,你可以从我每一个代码文件中看到void*的存在。
在一些隐讳的地方,用void* ,确保安全。
little_paradise
2005-02-24
打赏
举报
回复
回复人: tanxingqiu(谈谈) ( ) 信誉:100 2005-02-15 23:18:00 得分: 0
一般不需要用这个东东,如果用了,那就要小心检查程序相关的美一寸肌肤了!
此话从何讲起????
疯狂低调
2005-02-23
打赏
举报
回复
感觉void*更加灵活,简直是万能指针啊!
holymoon858
2005-02-22
打赏
举报
回复
void * 我认为写成“通用指针”更好理解一些
ww425
2005-02-20
打赏
举报
回复
学习
ligang17596
2005-02-20
打赏
举报
回复
学习ing 值得关注
tanxingqiu
2005-02-15
打赏
举报
回复
一般不需要用这个东东,如果用了,那就要小心检查程序相关的美一寸肌肤了!
idau7
2005-02-13
打赏
举报
回复
void*的问题很少被整理出来哦。
davidmorre
2005-02-13
打赏
举报
回复
喔,我认为void*的作用主要还是在返回值上,毕竟用void返回后,可以指代任何类型的指针,返回后可以强制转换成需要的类型指针。一般认为它指向一个不确定大小与类型的空间。但如果需要的话,也可以用它作形参,来接受任意类型的指针。
sky911911
2005-02-13
打赏
举报
回复
应该打印出 malloc error吧 !
CodeProject-Jerry
2005-02-13
打赏
举报
回复
void * 就是LPVOID
英语好象叫 Generation Pointer
不知道错了没~~
Lethe_1
2005-02-12
打赏
举报
回复
实际上void*可以指向任和一个地址,你想总线错误就用它!!!
athena301
2005-02-12
打赏
举报
回复
被使用前都强制转换。
linkmm
2005-02-11
打赏
举报
回复
任何指针都有默认的转换为void*的方法而不需要cast.
这是void*优点之一
Squall1009
2005-02-11
打赏
举报
回复
你用void*的时候一般要把他还原成他原来的类型,其他也没什么,只不过是是它可以指向任何一个对象,说白了就是它就光代表一个地址
melonliu
2005-02-11
打赏
举报
回复
void *主要用于通用指代的情况下,从字面上看比char *含义更明确。比如Malloc并不知道需要分配内存的具体数据类型是什么,它只管分配内存然后返回一个无类型指针。使用时注意类型转换。
BuleFreezing
2005-02-11
打赏
举报
回复
void*是无类型指针,在以前没有引入void*的时候,可以用char*来代替。
void*所指向的目标编译器不知道其大小(因为不知道是什么类型,默认步进是一个byte),所以有些编译器不支持void*类型的运算,如vc,但是gcc可以。
void*具体的用法比较的少,正如它的名字一样,在不能确定类型的时候用,比如说要用c写一个能接受任何类型的堆栈什么的,可能会用到。有时候在一些比较低级的场合会用到。
妖怪
2005-02-11
打赏
举报
回复
一般在对象类型无法确定或者在操作的时候发生类型变化的时候使用VOID*指针,而VOID*的好处在于可以对指针指向对象的不确定性,能在后面强制转换来删除。
naturemickey
2005-02-11
打赏
举报
回复
我从来不用void* Malloc(int);
不过有时用void (*Malloc)(int);
C/C++
指针
的13份资料
7. **
函数
指针
**:
函数
指针
可以指向一个
函数
,使得可以作为参数传递或存储在数据结构中。例如,`
void
(*func_ptr)(int)`声明了一个接受整型参数并无返回值的
函数
指针
。 8. **动态内存管理**:通过`malloc()`和`...
C++
void
*
指针
、多重
指针
void
**和
指针
大小
用
void
* 定义一个
void
类型的
指针
,它不指向任何类型的数据,意思是,
void
*
指针
“指向空类型”或“不指向确定的类型”,而不要理解为
void
*
指针
能指向“任何的类型”数据。简而言之:
void
*只提供一个地址,没有指向...
void
*
指针
一个
void
*
指针
存放着一个地址,这一点和其他
指针
类似。 不同的是,对地址中到底是什么类型的对象并不知道。因此不能直接操作
void
*
指针
所指的对象,因为不知道这个对象到底是什么类型,也就无法确定能在这个对象上做...
C/C++编程笔记:C语言精华解析之
void
*
指针
,
指针
中的万能
指针
万能
指针
其实就是
void
*类型的
指针
,而
void
*
指针
一般被称为通用
指针
或叫泛
指针
。它是C语言关于纯粹地址的一种约定。当某个
指针
是
void
型
指针
时,所指向的对象不属于任何类型。 因为
void
指针
不属于任何类型,不可以对...
c语言
void
*
指针
,C语言
void
指针
C语言
void
指针
教程在
void
的意思就是 “无类型”,
void
指针
则为...如果要通过
void
指针
去获取它所指向的变量值时候,需要先将
void
指针
强制类型转换成和变量名类型相匹配的数据类型
指针
后再进行操作。任何类型的...
C++ 语言
65,186
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章