u010554015 2013年05月03日
新手求教关于指针和地址的问题!
我想从**argv里把所有字符复制到一个新的指针数组*ar[10]里。按我的理解ar[i]里存放的应该是新的char数组的首地址,但是运行结果不对。问题出在哪里?先谢谢各位大哥了

#define NB_OF_ARGS 10
int main(int argc, char **argv) {
int i,j;
if (argc != NB_OF_ARGS + 1) {
printf("Run the program with 10 command line arguments please.\n");
return EXIT_FAILURE;
}
/* REPLACE WITH COMMENT WITH YOUR CODE */


char *ar[NB_OF_ARGS];

for(i=1;i<NB_OF_ARGS;i++){
ar[i-1]=(char*)malloc(sizeof(char)*32);
char a[strlen(argv[i])+1];
for(j=0;j<strlen(argv[i])+1;j++){
a[j]=argv[i][j];
}
*ar[i-1]=a;
}
}
...全文
65 点赞 收藏 8
写回复
8 条回复

还没有回复,快来抢沙发~

发动态
发帖子
C语言
创建于2007-09-28

3.2w+

社区成员

24.0w+

社区内容

C语言相关问题讨论
社区公告
暂无公告