c++中如何写一个函数,输入数据个数N,给data变量申请N个空间,并输入N个数值

2025-02-28 15:18:15
推荐回答(3个)
回答1:

由于c++支持c,我用c写了下面的一个程序
我猜你是想知道用哪个函数可以向系统申请一段空间。
c中可以用malloc()函数实现,整个程序如下:(本人用Visual C++6.0,运行成功)
//****************************
#include //包含malloc()函数的定义
#include
void main()
{
int N,i,*p;
scanf("%d",&N);
p=(int *)malloc(sizeof(int)*N);
for(i=0;i scanf("%d ",(p+i));
for(i=0;i printf("%d ",*(p+i));
}
//**********************************

/malloc 只管分配内存,并不能对所得的内存进行初始化,所以得到的一片新内存中,其值将是随机的。

回答2:

unsigned int N;
cin>>N;
int * const data = new int[N]; // 常指针,防止改变其指向,便于后面释放
for(int i = 0; i!=N; i++)
{
cin>>data[i];
}
.....
.....
delete []data; // 使用完后要手动释放

回答3:

用new 来操作

例如 你要申请10个int 的数组
那么就 data = new int[10];
然后循环输入值就可以了