首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

提问,该如何处理

2012-02-16 
提问#includeiostream#includestdio.h#includecstring#defineMAX_DIGIT2000usingnamespacestdintma

提问
#include   <iostream>
#include   <stdio.h>
#include   <cstring>
#define   MAX_DIGIT   2000
using   namespace   std;
int   main()
{
char   InPut[2][MAX_DIGIT],Number[MAX_DIGIT][MAX_DIGIT][2],Result[2*MAX_DIGIT   -   1];
int   No_InPut_1,No_InPut_2,No_Result,temp,i,j,carry   =   0;
/*****************************     input   Number[MAX_DIGIT][MAX_DIGIT][2]***********/


return   0;
}
提示stack   overflow
求解,求原因~~

[解决办法]
Number[MAX_DIGIT][MAX_DIGIT][2]
===> 1000x1000x2xsizeof(char) = 2M;
VC工程默认的栈大小只有1M.

1. 改用动态数组(new) 或std::vector <>
2. 改默认栈的大小:
Project--> Property--> Linker--> System--> Stack Reserve Size: 输入 "4096000 ",
即4M

热点排行