标题:简单的数组问题,不知道为什么编译不对
取消只看楼主
啥都不懂的人
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-9-21
结帖率:0
已结贴  问题点数:20 回复次数:1 
简单的数组问题,不知道为什么编译不对
简单的冒泡法排序,不知道为啥在vs2017上编译出错 显示 Run-Time Check Failure #2 - Stack around the variable a was corrupted

多谢指教!


#include<stdio.h>

int main()
{
    int i,j,t=0;
    int a[] = { 1,3,6,2,5 };
    for (i = 1;i <= 4;i++) {
        for (j = 1;j <= 5 - i;j++)
            if (a[j] > a[j+1]) {
                t = a[j+1];
                a[j+1] = a[j];
                a[j] = t;
            }
    }
    printf("\n");
    for (i = 0;i < 5;i++) {
        printf("%d", a[i]);
    }
    return 0;
}
搜索更多相关主题的帖子: 数组 编译 int for i++ 
2017-09-21 16:10
啥都不懂的人
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2017-9-21
得分:0 
回复 2楼 吹水佬
大佬能否帮忙细讲一下啥是越界...感觉不是很懂。因为我先定义数组再定义i这些变量,编译还是出错。
2017-09-21 16:43



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-480853-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.295011 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved