matt
Erfahrenes Mitglied
Hi Leute!
Ich hab ein Problem mit einem Funktionsaufruf. Und zwar möchte ich ein Struct an eine Funktion übergeben, damit diese mit den darin enthaltenen Daten andere Daten per UDP empfangen kann. Die Übergabe klappt aber nicht, und beim kompillieren mit dem gcc kommt folgender Fehler:
"warning: passing arg 3 of `recvUDPdata' from incompatible pointer type"
Ich bin nich wirklich ein Crack in (ANSI) C, habe deshalb diese Übergabe von anderen Funktionen (z.b. accept()) abgeleitet, da dort genau dasselbe Struct übergeben wird. Aber das scheint wohl falsch zu sein. Aber jede andere Möglichkeit ging auch schief. Komme jetzt nichtmehr weiter
Hoffe, jemand kann mir bei meinem Problem helfen, is wahrscheinlich wieder ein Logikfehler.
matt
Hier folgt mal der Funktionsaufruf und die Funktionsdeklaration:
==========================================================================
Funktionsaufruf:
==========================================================================
Funktionsdeklaration:
Ich hab ein Problem mit einem Funktionsaufruf. Und zwar möchte ich ein Struct an eine Funktion übergeben, damit diese mit den darin enthaltenen Daten andere Daten per UDP empfangen kann. Die Übergabe klappt aber nicht, und beim kompillieren mit dem gcc kommt folgender Fehler:
"warning: passing arg 3 of `recvUDPdata' from incompatible pointer type"
Ich bin nich wirklich ein Crack in (ANSI) C, habe deshalb diese Übergabe von anderen Funktionen (z.b. accept()) abgeleitet, da dort genau dasselbe Struct übergeben wird. Aber das scheint wohl falsch zu sein. Aber jede andere Möglichkeit ging auch schief. Komme jetzt nichtmehr weiter

Hoffe, jemand kann mir bei meinem Problem helfen, is wahrscheinlich wieder ein Logikfehler.
matt
Hier folgt mal der Funktionsaufruf und die Funktionsdeklaration:
==========================================================================
Funktionsaufruf:
Code:
int c, cli_size;
struct sockaddr_in cli;
[...]
cli_size = sizeof(cli);
c = accept(s, (struct sockaddr *)&cli, &cli_size);
if (c == -1) {
perror("Fehler in accept()");
return 5;
}
ret_recv = recvUDPdata(udpsocket, &message_in, (struct sockaddr *)&cli);
[...]
Funktionsdeklaration:
Code:
int recvUDPdata(int socket, char **return_buffer, struct sockaddr *from) {
Zuletzt bearbeitet: