当前位置:  开发笔记 > 编程语言 > 正文

如何在C中初始化多维Char数组?

如何解决《如何在C中初始化多维Char数组?》经验,为你挑选了2个好方法。

我正在尝试将一些代码从C#转换为C,以便可以将其刻录到微控制器上.

有人可以告诉我如何将C#中的二维字符串数组转换为C语言中的某些内容?

我的C#代码如下所示:

string[,] DirectionPosition = {{"00", "10", "", "01", ""},
                                        {"01", "11", "", "02", "00"},
                                        {"02", "12", "", "03", "01"},
                                        {"03", "13", "", "04", "02"},
                                        {"04", "14", "", "", "03"},
                                        {"10", "20", "00", "11", ""},
                                        {"11", "21", "01", "12", "10"},
                                        {"12", "22", "02", "13", "11"},
                                        .
                                        .
                                        .
                                        .
                                        {"44", "", "34", "", "43"},};

而且,我将如何访问元素?在C#中,如果我想要第三行中的第二个元素,那么它只是DirectionPosition [2,1],但是当C中没有字符串的情况下更少的2-D字符串数组是什么呢?



1> paxdiablo..:

最简单的方法是使用char指针,如下所示:

char *DirectionPosition[9][5] = {
    {"00", "10", "",   "01", ""  },
    {"01", "11", "",   "02", "00"},
    {"02", "12", "",   "03", "01"},
    {"03", "13", "",   "04", "02"},
    {"04", "14", "",   "",   "03"},
    {"10", "20", "00", "11", ""  },
    {"11", "21", "01", "12", "10"},
    {"12", "22", "02", "13", "11"},
    {"44", "",   "34", "",   "43"}
};

第一行中的元素"10"被引用为DirectionPosition[0][1](从零开始,第一个索引是行,第二个是列).



2> dirkgently..:
char DirectionPosition[][ 5 ][ 3 ] = {{"00", "10", "", "01", ""},
                                    {"01", "11", "", "02", "00"},
                                    {"02", "12", "", "03", "01"},
                                    {"03", "13", "", "04", "02"},
                                    {"04", "14", "", "", "03"},
                                    {"10", "20", "00", "11", ""},
                                    {"11", "21", "01", "12", "10"},
                                    {"12", "22", "02", "13", "11"},
                                    .
                                    .
                                    .
                                    .
                                    {"44", "", "34", "", "43"},};

C没有内置的字符串类,你必须使用字符数组.您也可以使用指向char的指针.

推荐阅读
ifx0448363
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有