Softwareentwicklung
›
Thread
Frage zu C und Array
Hallo ich habe da eine Frage kann man das folgende Zwei Dimensionale
Array einfacher initialisieren
1 uint32_t Patter1 [ 9 ] = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 };
2
3 uint32_t Patter2 [ 9 ] = { 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 };
4 uint32_t Patter3 [ 9 ] = { 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 };
5 uint32_t Muster [ 3 ][ 9 ];
6
7 int main ()
8 {
9 for ( int i = 0 ; i < 9 * 1 ; i ++ )
10 Muster [ 0 ][ i ] = Patter1 [ i ];
11
12 for ( int i = 0 ; i < 9 ; i ++ )
13 Muster [ 1 ][ i ] = Patter2 [ i ];
14
15 for ( int i = 0 ; i < 9 ; i ++ )
16 Muster [ 2 ][ i ] = Patter3 [ i ];
17
18 for ( int i = 0 ; i < 3 ; i ++ ) {
19
20 for ( int j = 0 ; j < 9 ; j ++ )
21 std :: cout << Muster [ i ][ j ];
22 std :: cout << "| \n " ;
23 }
GE
ganz einfach
Gast
28.06.2020 12:21
#6319095
1 $ cat a.c
2 #include <stdio.h>
3 #include <stdint.h>
4
5 uint32_t foo[][3] = {
6 { 0, 1, 2 },
7 { 3, 4, 5 },
8 { 6, 7, 8 }
9 };
10
11 int main(void) {
12 printf("%d%d\n", foo[1][1], foo[0][2]);
13 }
14 $ ./a
15 42
16 $
M
mh
Gast
28.06.2020 12:23
#6319100
1 int MusterX [ 3 ][ 9 ] = {
2 { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
3 { 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 },
4 { 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 }
5 };
6
7 int MusterY [ 3 ][ 9 ] = {
8 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ,
9 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 ,
10 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26
11 };
Beitrag #6319101 wurde von einem Moderator gelöscht.
JV
Jack V.
(jackv)
28.06.2020 12:25
#6319104
Martin M. schrieb:
> Hallo, ich habe da eine Frage: Kann man das folgende zweidimensionale
> Array einfacher initialisieren?
FTFY
HB
Heinz B.
(hbrill)
(Firma: Privat)
28.06.2020 16:53
#6319426
Ich kann zwar kein C oder C++, aber von der
allgemeinen Programmierlogik her braucht es doch nur
1 Schleife und 1 Array :
1 uint32_t Muster [ 3 ][ 9 ];
2 int main ()
3 {
4 for ( int i = 0 ; i < 9 ; i ++ )
5 Muster [ 0 ][ i ] = i ;
6 Muster [ 1 ][ i ] = i + 9 ;
7 Muster [ 2 ][ i ] = i + 18 ;
Wobei ich davon ausgehe, daß bei C als erstes die Dimension
und als zweites das Element kommt. Andernfalls kann man es ja
auch umdrehen.
Oder muß bei C das Array vorher initialisiert sein ?
mh schrieb:
> 1 > int MusterX [ 3 ][ 9 ] = {
2 > { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 },
3 > { 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 },
4 > { 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26 }
5 > };
6 >
7 > int MusterY [ 3 ][ 9 ] = {
8 > 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ,
9 > 9 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 ,
10 > 18 , 19 , 20 , 21 , 22 , 23 , 24 , 25 , 26
11 > };
12 >
Danke mit MusterX so habe ich es gemacht. Vielen Dank schöne Woche .)
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.
Noch kein Account?
Die Registrierung ist kostenlos und dauert nur eine Minute.
Jetzt registrieren