由于模拟计算的需要,需要定义几个比较大的数组(2000*20000)以供存放数据,但是VC6.0的数组大小好像有限制,请问如何才能解决这个问题?请给出具体的定义、调用程序语句。谢谢!
c++编程中如何定义一个很大的数组(2000*20000)?
1、把这些数组定义成全局的,不要放在函数内部;2、和一楼兄弟说的方法一样用new或malloc申请动态内存,例如:char* a = new char[2000*20000];注:不仅VC6,所有编译器对堆栈大小都是有限制的,这个限制可以通过设置调整
C++编程如何保存一个非常巨大的数
把这个很大的数看做字符串,输出以字符串形式输出;如果你引用的只是这个很大数的一个字节或几个字节,可以看做引用字符数组的第多少个元素;注意内存大小端;参考memcpy()函数.内存拷贝函数
C++中,数组无穷大用什么表示?
数组没有无穷大,现在内存也就4G、8G、16G,也算不上无穷大,无穷大数组上哪申请那么大内存。一个整型就算是8位的long也才64个bit位,用int[64]也就行了,还用得着int[2000]?杀鸡用牛刀,用byte[64]更省内存。用递归法,内存也省了。void fun(int a){ if(a\/2 > 0){ fun(a\/2);a %...
C++语言中加static的数组问题
这个程序本身不够完善。算496时,最大的因数为248,远远超过了a[20]的范围,我想之所以你的程序在写static时候能运行成功,是因为当变量为staitc时是被分配在静态区,也许是因为静态区内存比较空闲或不经常修改的原因,你的程序仍然输出正常,只是运气好的原因。要让够大的数也能运行,要把a[]的范围该...
c++中需要用到一个double[2000][210][7]的三维数组但好像太大了,要怎样...
你可以把它在堆上new出来,比如这样 用一个一维的数组平铺开来。double * xxx = new double[2000*210*7];这种方法,访问的时候需要计算下下标。还可以先声明一个三级的指针 double ***xxx = (double )(new double[2000]);再给每个数组成员赋上一个二级指针。for(int i = 0; i < 2000; ++...
C++编程中,不知道一个数组的元素个数,只知道要输入一组数据,请问如何定 ...
采纳率:28% 擅长: 编程语言 C\/C++ 操作系统\/系统故障 常见软件 系统软件 其他回答 int array = new int [i]; kangjiabei | 发布于2012-04-10 举报| 评论 0 4 你还没有说,是字符数组还是整型数组??如果是字符数组的话,就定义一个比较大的数组,然后用strlen()函数求出元素的个数。。。 热心网...
请问在C语言里如何将一个数组元素的个数设为输入的值?
C\/C++ 语言里, 声明 数组大小时,只允许用常数,例如:int a[10];int b[5*4*3];不允许用 变量。如何将一个数组元素的个数设为输入的值呢,一般用动态分配。int *a; \/\/ 声明为指针。知道大小n后, 用动态分配:a = (int *) malloc(sizeof(int) * n);接下来就可以 把 a 看成 你...
C\/C++编程知识:多维数组(二维数组、三维数组)知识点分享
例如int x[2][3][4]。每个元素可以通过三个索引访问,如x[0][1][2]。尽管多维数组在复杂应用中常见,但实际编程中,二维数组是最常用的形式。提升编程能力,从学习C\/C++基础开始,如查看源码、视频教程和项目实战,可以帮助你快速进步。对于初学者来说,利用丰富的资源是提升速度的关键。
C\/C++编程笔记:获取数组长度
函数定义调整:template int getArrayLen(T* array) { return (sizeof(array) \/ sizeof(array[0]) - 1); } 在C++中,如果将一个数组作为参数传递给函数,数组会退化为一个指针,因此无法直接获取数组长度。此时,若需要数组长度,通常需要传入数组的大小作为参数。希望您在编程学习的道路上取得...
C语言 char型 二维数组问题 急!!!
\/\/ p为数组的指针,也可以改成不用结构,不过哪样看起来就有些乱了 \/\/ char **p= (char **)malloc( 2200* sizeof(char));\/\/ 其内容是分配大小为2200*siseof(st)大小的空间,也就是2200*2 \/\/ 结构中仅有一个指针,大小为2字节 for(i = 0 ; i < 2200 ; i++)p[i].s = (char...