struct定义了50组后超过50组为什么还能正常

来源:4-2 定制自己的容器:结构体和共用体

Vanchen

2022-03-04 23:23


struct Student

{

    int math;

    int english;

};

struct Student stu[50];

    srand((int)time(0));

    //为其中一个学生的成绩随机赋值

    for (int i = 0; i < 55; i++)

    {

        int a = random(1, 10);

        int b = random(1, 10);

        stu[20].math = a;

        stu[20].english = b;

        printf("%d=,%d,%d\n",i, stu[20].math, stu[20].english);

    }

我定义了50组,for循环54,超出4组,为什么还能正常运行呢?长度难道是自增长的吗?那还定义多少组有什么意义?


写回答 关注

2回答

  • weixin_慕尼黑2406156
    2023-03-11 11:39:30

    并不是自己增长得哦。如果超出的不多,那么是可以运行的。但如果超出的非常多,会给你报错。正常来说你输出的内容应该是0吧?因为并没有定义。你这个代码是越界的,是有错误的,不报错不代表是对的。

  • 慕粉1549276780
    2022-03-06 12:53:44

    正常云行但是输出不了吧

    Vanche... 回复慕粉1549...

    你试过了?不知道啥情况,这样的话,定义多少组就没意义了

    2022-03-06 13:40:25

    共 5 条回复 >

趣味 C++ 入门

C++ 入门,开启趣味学习之旅,揭开 C++ 的神秘面纱,让你不再望而生畏。

31200 学习 · 189 问题

查看课程

相似问题