Ich versuche, etwas Code von C# zu C zu konvertieren, damit es auf einen Mikrocontroller gebrannt werden kann.Wie initialisiert man ein mehrdimensionales Char-Array in C?
Könnte mir bitte jemand sagen, wie ich ein zweidimensionales String-Array in C# in etwas in C konvertieren würde?
Mein C# Code sieht wie folgt aus:
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"},};
Und außerdem, wie würde ich die Elemente zugreifen? In C#, wenn ich das zweite Element in der dritten Zeile wollte, wäre es einfach DirectionPosition [2,1], aber was ist das Äquivalent, wenn es keine Zeichenfolge in C gibt viel weniger 2-D-String-Arrays?
Beachten Sie, dass da Sie Zeiger auf statische Strings sind zu speichern, die Sie nicht in der Lage sein, diese Strings im Code zu ändern. Wenn Sie sie ändern möchten, verwenden Sie sie als Initialisierer für Arrays wie im Code von dirkently. – rampion
Ich habe tatsächlich daran gedacht, @ rampion, aber angesichts der Mikrocontroller-Aspekt und der Ton in der Frage, habe ich die Befehlsentscheidung getroffen, es als eine konstante Tabelle zu behandeln. Ich habe mich möglicherweise geirrt. In diesem Fall sollten Sie eine der 3D-Lösungen ohne Zeigertyp verwenden. – paxdiablo
Ich würde bevorzugen char * DirectionPosition [] [5] = {.....}; – chmike