zhuandaqian 发表于 2020-12-28 17:03:33

指针和二维数组,小甲鱼课后作业的疑惑,谢谢各位大佬,问题在代码里的//后面

#include <stdio.h>
#include <string.h>

int main()
{
      char *array = {"FishC", "Five", "Star", "Good", "Wow"};                     //为什么array前面要加*
      char *(*p) = &array;                                                                         //这里第一个*是因为array那行有*号吗,不然易班就(*p)【5】=&array的啊
      int i, j;

      for (i = 0; i < 5; i++)
      {
                for (j = 0; j < 5; j++)
                {
                        if (i > strlen((*p)) - 1)
                        {
                              break;
                        }
                        printf("%c ", (*p));
                }
                printf("\n");
      }

      return 0;
}

zhuandaqian 发表于 2020-12-28 17:06:29

本帖最后由 zhuandaqian 于 2020-12-28 17:07 编辑

萌新小白

风过无痕1989 发表于 2020-12-28 17:41:56

本帖最后由 风过无痕1989 于 2020-12-28 17:56 编辑

数组名前面加*,表明这是一个指针数组。第一个不是,第二个才是

对这个问题的详尽解答,请看我早些时候的帖子:https://fishc.com.cn/forum.php?mod=viewthread&tid=186747&ctid=1849
页: [1]
查看完整版本: 指针和二维数组,小甲鱼课后作业的疑惑,谢谢各位大佬,问题在代码里的//后面