linked list

Lemiras

Mitglied
Ich möchte eine Linked List Programmieren im Debugger funktioniert es auch im Prinzip. Nur bekomme ich die Warnung vom Compiler das die Zeigertypen nicht kompatibel sind.

Code:
typedef struct{
int clientNR;
[.....]
struct Client_Info *first_client;
struct Client_Info *last_client;
struct Client_Info *prev_client;
struct Client_Info *next_client;
}Client_Info;
 
//Neuer Client anhängen
Client_Info *add_client(pid_t PID) {
static int clients = 0;
static Client_Info *cl;
Client_Info *n_cl;
 
 
n_cl = (Client_Info *)malloc(sizeof(Client_Info));
 
if(clients == 0){
 
	 n_cl->first_client = n_cl->last_client = n_cl; //Hier tritt die Warnung auf
 
	 [.........]
} else {
 
  n_cl->prev_client = cl; //Hier auch
 
  [....]
}

Kann mir jemand weiter helfen ich sitze schon seit einem Tag da drann
 
Zuletzt bearbeitet:
Es ist´eine Warnung:
Zuweisung von inkomatiplen Zeigertyp

Aber für mich sieht es so aus als ob doch beides ein Zeiger auf Client_Info seien müßte
 
moin


Wäre schon wenn du die Warnungen jetzt auch noch gepostet hättest.
Aber vielleicht hilft casten schon, um die Warnungen weg zu bekommen.


mfg
umbnrasaxum
 
ok ist gelöst,

innerhalb der Structur war der Datentyp "Client_Info" noch nicht registriert, daher mußte ich nun "struct Client_Info" verwenden.

Dies hat jedoch der Compiler (GNU gcc) als zwei unterschiedliche Datentypen angesehn (was sie ja eigentlich nicht sind) und somit die Warnung ausgegeben.

Gruß André
 
Zurück