c中的分段错误(堆芯转储)。字符**argv[]

c中的分段错误(堆芯转储)。字符**argv[],c,C,我正在尝试用linux编写一个C程序。代码如下: #include <stdio.h> #include <stdlib.h> int main(int argc, char** argv[]) { int i; for(i = 0; i < argc; i++) { printf("%s\n", *argv[i]); } return 0; } #包括 #包括 int main(int argc,字符**argv[] { int

我正在尝试用linux编写一个C程序。代码如下:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char** argv[])
{
  int i;

  for(i = 0; i < argc; i++)
  {
    printf("%s\n", *argv[i]);
  }

  return 0;
}
#包括
#包括
int main(int argc,字符**argv[]
{
int i;
对于(i=0;i
gcc
不断给我错误
分段错误(堆芯转储)

我假设我必须遵从
*argv[I]
,但我不知道。请帮助。

字符**argv[]
应该是。然后你可以做:

int i;
for(i = 0; i < argc; i++) {
   printf("%s\n", argv[i]);
}
inti;
对于(i=0;i

编辑:谢谢您的评论,我的C确实有点生锈。)

除了
*argv[i]
只是一个小数字的第一个字母,将其作为“字符串”(即
%s
说明符)取消引用将再次导致分段错误。应该是
argv[i]
。它只是
argv[i]