| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 892 人关注过本帖
标题:void 指针怎样做函数的参数?
只看楼主 加入收藏
yang4055
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-8-18
收藏
 问题点数:0 回复次数:3 
void 指针怎样做函数的参数?
各位大虾好,最近遇到一个问题,一直搞不定,贴出来让大家指点下:

函数目的:想把子函数中的int a的值通过参数void **handle传递出来,在主函数中要用到a的值。

void fun(void **b)
{
    int a = 100;
    memcpy(*b, &a, sizeof(int));
}

void main()
{
    void **c;
    fun(c);
}

    先不说细节,我上面的程序就是想表达我的意识,但是我按照这个方法编译好程序之后,不能用,会提示我段错误。
    我觉得关键是我不知道怎么从通过void双重指针传递出参数,指针的操作出现问题,往大家指点下迷津,谢谢了!
    想给大家点分,结果发现自己还是个0,不好意思啊!!

[ 本帖最后由 yang4055 于 2009-10-27 15:14 编辑 ]
搜索更多相关主题的帖子: 关键是我 
2009-10-27 15:12
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
1.

void fun(void *b)
{
    int a = 100;
    memcpy(b, &a, sizeof(int));
}
void main()
{
    int a = 105;
    fun(&a);
    printf("%d", a);
}




[ 本帖最后由 cosdos 于 2009-10-27 18:01 编辑 ]

—>〉Sun〈<—
2009-10-27 17:59
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
楼主,你还不理解指针。

int a = 5;    // int 变量
int *p;        // int 指针          (指向“int”的指针。可以指向上面定义的“int a”)
int **pp;    // int 指针的指针(指向“指向“int”的指针”的指针,可以指向上面定义的“int *p”)


—>〉Sun〈<—
2009-10-27 18:11
yang4055
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2008-8-18
收藏
得分:0 
回复2楼和3楼,谢谢两位的解答!
我是根据一个国标写程序,国标里面明确规定函数传入的参数是 void ** 型(两个星)的,所以我也没有办法,我觉得国标可能有书写的错误,我再推敲下。
2009-10-28 08:33
快速回复:void 指针怎样做函数的参数?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011775 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved