我已经初始化了一个 char** 并在循环中使用 malloc 分配了空间
char *argv[SIZE];
for( i=0 ; i < SIZE; i++ ){
argv[i] = (char *) malloc(64);
printf("ADDRESS %d Index %d\n",argv[i],i);
}
printf 显示地址增加了 160,而不是 64,这正常吗?
假设我将第二个索引指向 null
argv[1] = NULL;
他们我试图让它指向它分配的内存位置
argv[1] = arg[0] + 64;
在我尝试循环释放后程序崩溃
免费(argv[i]);
那么我怎样才能让它指向它的原始位置呢?160从哪里来?
提前致谢