飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: 冷月孤心

初学者C语言学习中的一个简单困惑解答

[复制链接]
  • TA的每日心情
    开心
    10 小时前
  • 签到天数: 1490 天

    [LV.10]以坛为家III

    发表于 2015-1-21 07:20:57 | 显示全部楼层
    知道代码从上往下一句一句的执行就不会犯困了
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2023-1-24 20:21
  • 签到天数: 99 天

    [LV.6]常住居民II

    发表于 2015-1-21 08:33:42 | 显示全部楼层
    学习了!学习了
    PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2015-7-19 17:17
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2015-1-21 09:30:58 | 显示全部楼层
    你的scanf在赋值的后面,所以b这个局部变量是沿用堆栈里原来的值
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2020-8-1 11:20
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2015-1-22 15:11:52 | 显示全部楼层
    最后一段 b貌似不需要赋值
    main()
    {
        int a;
        int b;
        scanf("%d",&a);
        b = a;
        printf("this is a = %d\n",a);
        printf("this is b = %d\n",b);
    }
    b会出现乱码 就是变量a的地址是随机分配的,里面的数据没有清零,所以里面的数据内容也是不可预料的
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2015-5-3 18:09:27 | 显示全部楼层
    正在学习c语言 原来如此 用编译器试了一下果真如此 以后得注意了
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2015-5-4 13:04:26 | 显示全部楼层
    使用变量前先初始化,所有教材中贯穿全书的原则。所以凡是定义变量,都先给他赋给“0”值,比如int a=0;double f=0.0;char c='\0';(或char c=0;)int *p=0(或在有#define NULL 0的条件下int *p=NULL;)。
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表