关于#c语言#的问题:如何画图解释下面的代码问题


#include <stdio.h>
int main()
{
    int i = 0;
    int arr[] = {1,2,3,4,5,6,7,8,9,10};
    for(i=0; i<=12; i++)
    {
        arr[i] = 0;
        printf("hello bit\n");
    }
    return 0;
}

你这是做啥操作

代码你运行了吗 有问题的 数据越界了

数组定义的时候,定义了10个数据,说明该数组只有10个长度,即a[0]a[9]的数据有效;
现在赋值给数据是分别给a[0]
a[12]赋值,a[10]~a[12]这三个数组元素是没有定义的。因此越界了
不知道明白了不。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^