全局未初始化的变量保存在BS区,编译器自动初始化为0main中的node是局部变量,在栈区,运行时分配内存,编译器默认不初始化,保存一个垃圾值。换一个编译也许会发现它始终等于1,但依然是一个垃圾值。原理属于提高部分,但现象属于基础,你应该仔细看看教程的基础部分。出学不用在意这些,不声明不初始,不初始不使用。