为什么这个程序中没有打印2d数组?

时间:2018-04-22 07:16:02

标签: c arrays multidimensional-array malloc

void doSmth(char **ar, int lines) {

  ar= (char*) malloc(sizeof(char*) * lines);

  for (int i = 0; i < lines; i++) {
    ar[i] = (char*) malloc(200 + 1);
    for (int j = 0; ar[i][j] != '\0'; j++) {
      printf("%c", ar[i][j]);
    }
    free(ar[i]);
  }

  free(ar);
}

这段代码似乎对我来说没有任何反应。没有任何错误。我已经尝试过其他方法来迭代除了!='/ 0'部分之外的数组。

注意:200是因为每个程序要求单行不能超过200个字符。

0 个答案:

没有答案