【发布时间】:2021-11-14 03:24:17
【问题描述】:
我有以下代码:
int main(int argc, char **argv)
{
printf("%s\n", mystrtype(argc - 2, &argv[2], argv[1]));
return (0);
}
但我无法理解如何在脑海中表示&argv[2],因为argv[2] 已经表示二维数组的第二行。 &argv[2] 指向数组的哪一部分?谢谢。
【问题讨论】:
-
这是一个有效的代码吗?
-
你想得太高了。
argv[2]是一个char *,它指向char数组的第一个字符。&argv[2]是该指针的地址。该表达式等价于argv + 2。 -
请以文本形式显示
mystrtype,实际上是Minimal Reproducible Example,最短的完整代码,显示您尝试过的内容。 -
是的,我只是使用另一个名为 mystrtype 的函数,其原型是 char *mystrtype(int size, char **array, char *string)
-
欢迎您!请编辑问题以包含完整代码。我建议您使用tour 并阅读How do I ask a good question?
标签: arrays c pointers implicit-conversion argv