[C] Funktion in Struct welche Variable von Struct zurückgeben soll

@sheel: Nein ist es nicht.

Also ich habs jetzt so gelöst, dass ich in meinem File die size benutze, diese zuerst neu setzte:
Eine static Methode, welche die Elemente der Liste zählt und setzt. So hab ich immer den richtigen Wert, auch wenn jemand dies von aussen Manipuliert.

Allerdings schein der Compilier mühe zu haben mit dem typdef, ich hab einen C2275 (Ungültige Verwendung dieses Typs als Ausruck). Arbeite im VS2012

list.h:
C:
typedef struct list_node_* ptr_node;

typedef struct list_node_{
	ptr_node next;
	void* element;
} list_node;

typedef struct list_{
	unsigned int size;
	list_node* head;
} list;

list.c
C:
void insertElement(..){
...
//Neuer Node erstellen
	ptr_node newNode = (ptr_node)malloc(sizeof(list_node));
...
}
 
Dann wäre es einen Pointer auf einen Pointer, ich ja den typdef
C:
typedef struct list_node_* ptr_node;

habe. Oder seh ich das Falsch?
 
Ok das ist komisch also bei mir compiliert das ohne Probleme.

Edit: Ich habe VS 2012 Utimate. Da sollte es eigentlich keine Unterschiede geben.

Lg
 
Zuletzt bearbeitet:
Ah habs gemerkt was falsch war. Variablen kann man ja in C nur jeweils Anfangs Block definieren, und icht hatte zuvor noch eine if-Abfrage. Blöder Fehler.

Danke für eure Hilfe!
 
Zurück