【发布时间】:2016-11-04 19:08:43
【问题描述】:
int main(int argc, char **argv){
char Q[MAXCHAR];
Q=argv[k+1];}
Q 是一个数组,而 argv[k+1] 是一个指针。 如何将 argv[k+1] 的内容放入 Q 中?
【问题讨论】:
-
指针和数组实际上是一回事。你只需要
strcpy。 -
@Sulthan 指针和数组不一样。在某些情况下,数组会衰减为指针;就是这样。
-
@Sulthan 数组是一个独特的对象类,它通常转换为指针,但不是指针:stackoverflow.com/a/4608421/2757035 数组的名称保留重要信息,主要是数组的
sizeof,指针无法传递。因此当然需要在任何地方传递数组大小。 -
@Sulthan:请 (a) 阅读 comp.lang.c FAQ 的第 6 部分,并 (b) 删除您最初的评论。数组是“真正的”指针的错误想法是对 C 语言最常见的误解之一。请不要进一步传播。