Chihiro525 2021-12-19 13:16 采纳率: 100%
浏览 37
已结题

基础c语言 基础c语言

要是一开始没给num和sum赋值,不是应该默认为0吗?为什么求和得到这样的数

img

img

  • 写回答

1条回答 默认 最新

  • 南七灵 2021-12-19 13:18
    关注

    1 局部变量。

    局部变量在没有显示初始化时,其值C语言规范没做要求,可以是随机值,也可以是编译器随意给定的值(另一种说法:以前残留在堆栈里的随机值)比如gcc编译器的局部变量就是随机值,可能为任何值。而微软的编译器,如VC或VS,则会初始化全为c,即0xCCCCCC;

    2 全局变量或静态局部变量。

    所有的全局变量,即定义在函数外的变量,默认值为0。

    所有的静态局部变量,即定义在函数内部的(eg:static int a)形式的,默认值为0。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月27日
  • 已采纳回答 12月19日
  • 创建了问题 12月19日