C能声明动态数组吗?我所知是不行的,必须指定size比如以下就会报错stringname[];那么在以下main函数中,commandline的参数又实现了声明动态数组intmain(intargc,stringargv[]){}请指教
2 回答
手掌心
TA贡献1942条经验 获得超3个赞
数组在一定程度上可以看做是指针的语法糖。所以动态数组实际上就是char*name=malloc(100);//whenyouneedtoextendyourstringname=realloc(name,200);argv的变长,实际上跟字符串的变长差不多,是靠最后一个'\0'作为标志的。你可以想像成系统realloc到了正好够用的内存。
添加回答
举报
0/150
提交
取消