Hallo zusammen, habe folgendes Verständnissproblem bei Structs
1 | #include <stdio.h>
|
2 | #include <stdlib.h>
|
3 | #include <string.h>
|
4 |
|
5 | struct ListElem { int prio; char*Name; struct ListElem*next;}; // Global(1.1)
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | int main(int argc, char *argv[])
|
11 | {
|
12 |
|
13 |
|
14 | struct ListElem Elem1 = {5,"Eins",20}; // Sehe ich das richtig das hier eine Adresse für Name und next vorgebe'??
|
15 |
|
16 |
|
17 | printf ("Groesse:\n %d Bytes \n", sizeof (Elem1)); // Drucken der verschiedenen Werte (1.2)
|
18 | printf ("Name: \n %s \n", Elem1.Name);
|
19 | printf ("Prioritaet: \n %d \n", Elem1.prio);
|
20 | printf ("Verkettungsinfo: \n %x \n", Elem1.next);
|
21 |
|
22 |
|
23 |
|
24 | system("PAUSE");
|
25 | return 0;
|
26 | }
|
Irgendwie verstehe ich
1 | struct ListElem Elem1 = {5,"Eins",20};
|
nicht!
Eigentlich weise ich doch mit "Eins" eine Adresse dem namen zu und mit
20 die Adresse "20" dem next zu, da ja name und next zuvor als zeiger
deklariert wurden.
aber irgendwie kann das doch nicht sein!oder??
Gruß feldi