| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 339 人关注过本帖
标题:有关指针NULL问题
只看楼主 加入收藏
南国雨
Rank: 1
等 级:新手上路
帖 子:26
专家分:9
注 册:2015-2-1
结帖率:72.73%
收藏
已结贴  问题点数:20 回复次数:3 
有关指针NULL问题
程序代码:
#include<stdio.h>
int main(){
    int *p;
    p=NULL;
    int a=3;
    p=&a;
    printf("%d",*p);
    return 0;
} 

这个是我第一遍测试的源代码。很明显,最后的结果是3.没问题
接下来看第二种源代码:
程序代码:
#include<stdio.h>
int *p;
p=NULL;
int main(){
    int a=3;
    p=&a;
    printf("%d",*p);
    return 0;
} 

当把p定义一个全局变量指针时,给它初始化NULL,为什么就挂了?
求高手解答!!!
搜索更多相关主题的帖子: 源代码 
2015-04-12 20:35
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:7 
程序代码:
#include<stdio.h>

int *p = NULL;

int main(void)
{
    int a = 3;
    p = &a;
    printf("%d", *p);
    return 0;
}


这样写就好了
2015-04-12 20:45
无功
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:44
专家分:168
注 册:2015-4-12
收藏
得分:7 
回复 2楼 zklhp
将int *p;p = NULL;改为int *p = NULL;
为什么这样改就对了,
2015-04-12 21:43
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:7 
以下是引用无功在2015-4-12 21:43:06的发言:

将int *p;p = NULL;改为int *p = NULL;
为什么这样改就对了,

现在的教程很少讲定义和执行指令的区别了吧?在函数之外允许写执行指令的么?

授人以渔,不授人以鱼。
2015-04-12 21:47
快速回复:有关指针NULL问题
数据加载中...
 
   



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

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