标题:这个程序那里错了?求教
只看楼主
小陈陈
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-8-12
结帖率:85.71%
已结贴  问题点数:6 回复次数:6 
这个程序那里错了?求教
# include <stdio.h>
void f(int *q)
{
*q=10;
}
int main(void)
{
int * p;
f(p);
printf("%d",*p);
    return 0;
}
搜索更多相关主题的帖子: include return 
2013-10-18 00:46
zhaogay
Rank: 7Rank: 7Rank: 7
来 自:宫
等 级:黑侠
帖 子:151
专家分:586
注 册:2013-10-10
得分:0 
这个看运气,运气好应该是输出10,运气不好就崩掉了。
指针p没有分配内存,指向不定,要是指向一个可用内存,就可以运行。要是指向一个不可用内存就崩掉了。
定义成整形数组,让系统分配,或者malloc自己分配,应该就可以了

好好学习,天天想上
2013-10-18 01:13
小陈陈
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2013-8-12
得分:0 
2013-10-18 11:02
ljx小子
Rank: 8Rank: 8
来 自:星星
等 级:蝙蝠侠
威 望:2
帖 子:222
专家分:916
注 册:2013-10-7
得分:6 
程序代码:
#include <stdio.h>

void f(int *q)
{
*q=10;

}
int main(void)
{
int p;
f(&p);
printf("%d",p);
return 0;
}
指针变量同普通变量一样,使用之前不仅要定义说明, 而且必须赋予具体的值。未经赋值的指针变量不能使用, 否则将造成系统混乱,甚至死机。指针变量的赋值只能赋予地址, 决不能赋予任何其它数据,否则将引起错误。

。。。。。。。。。。。
2013-10-19 13:26
田伶俐
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-10-19
得分:0 
指针的使用
#include <stdio.h>
void f(int *q)
{
    *q=10;
}
int main(void)
{
    int *p;
    p=NULL;
    f(p);
    printf("%d",*p);
    return 0;
}
2013-10-19 15:56
夏时雨
Rank: 2
等 级:论坛游民
帖 子:45
专家分:75
注 册:2013-10-11
得分:0 
# include <stdio.h>
# include<stdlib.h>//加上这里
void f(int *q)
{
*q=10;
}
int main(void)
{
int * p;
p=malloc(4);//加上这里
f(p);
printf("%d",*p);
    return 0;
}

人生若只如初见
何事秋风悲画扇
2013-10-19 18:59
夏时雨
Rank: 2
等 级:论坛游民
帖 子:45
专家分:75
注 册:2013-10-11
得分:0 
# include <stdio.h>
# include<stdlib.h>//加上这里
void f(int *q)
{
*q=10;
}
int main(void)
{
int * p;
p=malloc(4);//加上这里
f(p);
printf("%d",*p);
    return 0;
}

人生若只如初见
何事秋风悲画扇
2013-10-19 18:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-422094-1-1.html




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

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