我有一些 c++ 代码,但我不知道是什么。出于示例的目的,假设它是:
//main.cpp
#include<iostream>
using namespace std;
int T[100];
int main()
{
for(int i = 0; i < 100; ++i)
T[i] = i;
int x;
cin>>x;
cout<<T[x]<<endl;
return 0;
}
我正在编译它cl /O2 /nologo /EHsc main.cpp
并运行它main < inFile.in
。假设 inFile.in 内容是一个数字500
和换行符。输出是一些随机数,因为程序读取地址下的内存T+500
并打印它。我想在这种情况下得到运行时错误(任何检查的可能性都是这样的)。如果不访问 main.cpp,这可能吗?具体来说,我在 ASP.Net MVC 应用程序中通过 C# 中的 Process 类以编程方式运行所有这些。我想检查程序是否抛出异常/读取未保留的内存等。