qq_47456064
qq_1193979453
采纳率100%
2021-03-06 19:06

想不通i为什么不是100,number为什么不是1。关键两个编译器运行的结果还不一样!救救孩子吧!

已采纳

i和number为什么会变啊

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • qq_43414873 小白小白你好菜 1月前

    这个地方涉及到操作系统申请内存了。。。

    其实是因为你的数组a越界了,按正常情况来看,你的int a[]={0},相当于int a[1]={0},然后的a[1]、a[2]都越界了,然后内存和地址开始往奇奇怪怪的方向去了,你把定义改成int a[3]={0}就会是正常的结果了

    点赞 1 评论 复制链接分享
  • qq_33439820 fluidog 1月前

    定义数组a的代码错误。int  a[]={0};表示数组长度为1,对a[1]赋值导致数组越界,正好修改了i变量的值。

    点赞 评论 复制链接分享