易截截图软件、单文件、免安装、纯绿色、仅160KB

C中一个数组的问题

我定义了一个数组,比如说int a[5]这是可以的,但是这个数组的大小(50)我在下面经常要用到,程序调试过程中如果觉得这个数字小了可能需要进行改变,比如说改变成100,这样我就需要把下面所有5都改成100,太麻烦了,那么怎么能解决呢?

我知道C不能定义动态数组,所以我尝试
#define abc (50)
int a[abc]
但是不行,又想不到什么别的方法可以简化,请教高手

数组一单声明,他的数据大小就固定了,你可以用动态的分配空间。

可以用malloc动态申请,用free释放

用vector 中的resize函数

动态开辟或者使用vector

C/C++ code:

#include <assert.h>
/* You can change size to anything you want */
array_new( size_t size ) {
assert( size > 0 && size < INT_MAX );
int *a = (int *) malloc( sizeof( int ) * size );
return a;
}


数组声明的时候 需要指定大小
需要动态改变,可以采用其他结构,如vector等


C语言用malloc来动态分配

如果说是调试的时候需要把数字变大,用
#define abc 20
这样就不要手动更改程序中abc的值。
如果是程序运行需要,而更改abc的值,用动态分配吧

引用
#define abc 50 ,不要()



有个函数可以重新分配空间豆嘛,

可以动态开辟,然后再把原来的内容拷过去


相关问答:

C 程序问题 (三) - C/C++ / C语言

问题一:
在对齐为4的情况下
struct BBB
{
long num;
char *name;
short int data;
char ha;
short ba[5];
}*p;
p=0x1000000;
p+0x200=____;
(Ulong)p+0x200=____;
(char*)p+0x200=____;
假设在32位C ......

刚学C,用C实现编码 - C/C++ / C语言

#include"stdio.h"
#include"stdlib.h"
void ContrTwo(char i)
{
char str1[8];
itoa(i,str1,2);
printf("%s",str1);
}
unsigned char leftRot(char str,int i);
unsign ......

C/C++里屏shift+f10键要怎么写! - C/C++ / C++ 语言

SHIFT加F10与那个键右ctrl边上的那个键功能一样,想屏这个
但不知要怎么写那个组合键!
有没哪个大侠放一段这个的代码或写一段
http://topic.csdn.net/u/20090609/15/7dc9fb70-243f-4070-9cfd-34e48b66e6c6.html ......

高分求!最好是C/C++ - C/C++ / C语言

分别用结构化方法和面向对象方法编程实现下面要求:
对Circle和Rectangle实现以下功能Center,Move,Rotate,Print.
自己先订以下,这是一个刚学习计算机的人问我的


学习,看看

继续顶哦

学习了。

go o ......

求教c/c++语言相关问题 - C/C++ / C语言

有一10*10矩阵,除去第一个点(0,0)和最后一点(9,9),还有八个点为1,其他都为0,要求用二维数组表示。八个点是随机生成的,编写相关程序表示矩阵所有可能情况。
真心求教各位高手,哎!本人太菜了!呵呵!
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号