如何解决ACM中ACCESS_VIOLATION的问题

发布网友 发布时间:2022-04-24 13:56

我来回答

1个回答

热心网友 时间:2023-10-15 08:48

ACCESS_VIOLATION的意思是您的程序想从一些非法的地址空间读取或向其中写入内容。一般例如指针、数组下标越界都会造成这个错误的。造成这个问题的原因基本上是因为数组开得太小了。不过数组开得小这是个相对的概念,比如你的程序必须要开int
a[100000]这样大的数组,如果你把它在局部变量中开肯定会被编译器报错,因为局部变量的空间是很小的,它就是一个很小的栈。遇到这样的你必须将它开成全局变量才不会被编译器报错。但是如果你认为哪个程序需要开int
a[10000000]这样的数组,说明这题肯定有简单的方法,因为acm中每题都是有memory*的,你数组开太大,通过了编译器,但是肯定通不过online
judge,结果肯定是Memory
Limit
Exceeded。所以这个你要具体分析。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com