繁体   English   中英

fscanf segfault读入数组

[英]fscanf segfault reading into an array

为什么这段代码中的fscanf给我一个段错误?

int main(int argc, char *argv[])
{
  FILE *file = fopen(argv[1], "r");
  int n = atoi(argv[2]);

  char *words[n]; int i=0;
  while ((fscanf(file, "%s ", &words[i])) != EOF) i++;
}

因为您没有为单词分配内存[i]。 它们只是指向随机存储器地址的指针。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM