以下代码,为什么老师结果是两个0,我的结果是num a=168595510 num b=32767,很疑惑,用的mac air,

来源:2-1 Linux C语言 初始指针

后会无期_

2017-05-30 12:32

#include <stdio.h>
int main()
{
    int a;
    int b;
    printf("num a=%d\nnum b=%d\n",a,b);
    return 0;
}


写回答 关注

5回答

  • 默默的等待4292792
    2017-05-31 05:09:00
    已采纳

    如果你不给a和b值,他们是未定义行为,他们会给你随机数

  • 慕粉1304077173
    2017-06-04 22:05:38

    就像老师说的 变量的实质是内存
    这个程序每次运行时 都会为变量a、b各自分配一个栈上的内存空间 但每次分配的内存空间都并非跟上一次的相同 所以这个内存上的内容自然就可能不同了

  • 默默的等待4292792
    2017-05-31 05:07:51

    我的编译器也是两个都是0

  • 后会无期_
    2017-05-30 14:48:21

    我试了几次,a的值有变化,但是b都是这个值

  • deng_xie
    2017-05-30 14:17:49

    这个好像是随机的

Linux C语言指针与内存

指针-C语言的核心,代领大家对c语言有更加深刻的理解

116475 学习 · 250 问题

查看课程

相似问题