我有这样的代码来存储argv
到动态分配的int
数组中:
int *data; // pointer to array of integer numbers
int size; // size of data array
int main(int argc, char* argv[]) {
// initialize array data
size=argc;
printf("%dSize=\n",size);
printf("%d\n",argc);
data=(int*)calloc(size,sizeof(int));
int i=0;
for (i=1;i<size;i++)
{
data[i]=argv[i];
printf("%d\n",data[i]);
}
for (i=1;i<argc;i++)
{
printf("%d\n",argv[i]);
}
return 0;
}
当我在命令行中运行时:
./sumprime 5 1 2 3 4
它打印:
6Size=
6
15311660
15311662
15311664
15311666
15311668
15311660
15311662
15311664
15311666
15311668
5 1 2 3 4
不是我预期的数组。如何存储int
数组argv
然后打印出来?