如何在C中声明一个常量2d字符串数组

Rau*_*ulp 2 c arrays string

我有以下数组结构:

left , right , top
top , left , right 
top , top , left 
Run Code Online (Sandbox Code Playgroud)

我想在C中声明它,我这样做了:

char *movements[][] = {{"left","right","top"},
                        {"top","left","right"},
                        {"top","top","top"}
                       }
Run Code Online (Sandbox Code Playgroud)

但我得到了这error : array has incomplete element type. 是实现这一目标的正确方法(声明和访问(打印)).我是否需要采用三维数组?

tou*_*rab 7

在C中,您必须在定义二维数组时指定列大小.看看这个问题:为什么我们需要在传递2D数组作为参数时指定列大小?

char *movements[][3] = {
                           {"left","right","top"},
                           {"top","left","right"},
                           {"top","top","top"}
                       };
Run Code Online (Sandbox Code Playgroud)