| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 763 人关注过本帖
标题:一个指针的问题 不知是忘了还是什么 居然出错了
取消只看楼主 加入收藏
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:7 
一个指针的问题 不知是忘了还是什么 居然出错了
程序代码:
#include <stdio.h>     
void  fun(int *&x)
{
    int b=6666;
    x=&b;
    printf("xxxxxxxxxxxxxxxxx%p\n",x);
    printf("xxxxxxxxxxxxxxxxx%d\n",*x);
}
/*int *fun3()
{
    int v=6666;
    int *x=&v;
    printf("xxxxxxxxxxxxxxxxx%p\n",x);
    printf("xxxxxxxxxxxxxxxxx%d\n",*x);
    return x;
}*/
int main()
{
    int *p=NULL;
    printf("原p存放地址:%p\n",p);
    fun(p);
    if(p==NULL)
        printf("NO DATA!\n");
    else
    {
        printf("后p存放地址:%p\n",p);
        printf("%d\n",*p);
    }
    return 0;
}


这里借c++的引用用了一下   
问题是为什么p 和 x 的地址是一样的 输出的整型的数却不一样呢 我是哪里搞错了
2013-11-26 18:55
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
如果发现什么马虎错误了  还望指点一下  随便喷我。。。
一定虚心接受
2013-11-26 18:57
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 4楼 heroinearth
呃 那个  请问是用的 .cpp后缀文件吗。。。那个指针的引用不该有错的啊
2013-11-26 19:31
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 4楼 heroinearth
如果形参是 int *x  这个就是传值调用所以不修改主函数的指针内容  但是我这里采取了c++里的引用 所以应该是会改变主函数里的指针内容的吧
2013-11-26 19:33
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 7楼 heroinearth
嗯 b会被释放  但是地址的内容还在吧 比如
程序代码:
#include <stdio.h>
int *  fun()
{
    int b=6666;
    int *a=&b;
    return a;
}
int main()
{
    int *a=fun();
    printf("%d",*a);
    return 0;
}

这个是可以的啊
2013-11-26 19:55
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 9楼 heroinearth
好吧  有点乱
2013-11-26 22:49
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 10楼 azzbcc
啊 不是吧  我怎么觉得这个很常用啊  
顿时凌乱了
2013-11-26 22:50
yuanhaitaozz
Rank: 1
来 自:江苏
等 级:新手上路
帖 子:32
专家分:9
注 册:2013-8-22
收藏
得分:0 
回复 16楼 embed_xuel
好吧  大致明白了个规则吧
2013-11-27 19:45
快速回复:一个指针的问题 不知是忘了还是什么 居然出错了
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015593 second(s), 8 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved