标题:【求助】对于scanf()内初始化的问题
只看楼主
Chanzm
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-3-23
结帖率:0
 问题点数:0 回复次数:1 
【求助】对于scanf()内初始化的问题
int a;
scanf("%d",&a);
这样是没问题的。

但是


char *n;
scanf("%s",n);
为什么这样就不行了,同样是未经初始化的变量只是一个是普通变量一个是指针变量
2016-03-28 15:46
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
得分:0 
你得为指针申请空间

#include <stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
    char *n;

    n = (char *)malloc(10);
    memset(n, 0, 10);
    scanf("%s", n);

    printf("%s", n);
    return 0;
}
2016-03-28 16:01



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




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

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