Funktion will net starten:(
-
hallo.
hab da ein Problem mit einem Progr.und zwar kann man es compilieren.aber wenn ich es starte,gehts zwar,aber es geht nie in die Funktion char *hallo. ich weiss nicht,ob ich das TypeCasting richtig gemacht habe,vorallem in der Funktion hallo bei write und close.genause mit dem return wert am Schluss,d.h ob ich auch einfach so hal uebergeben kann.hatte die Funktion hallo anfangs als void Funktion gesetzt,ging aber net so.char *hallo(char *hal){ char* s; ... s = (char*)malloc(256); while (1) { .... if (write(hal), s, strlen(s)+1) == -1) { /* bin mir hier mit dem write nicht sicher,ob ich das hal richtig uebergeben habe*/ perror("geht net"); break; } sleep(1); } if (close(hal) == -1) { /* genauso hier mit close und hal */ perror("geht auch nicht"); return NULL; */muss ich hier NULL zurueckgeben,hatte es naemlich als void Funktion,und dann gings ohne NULL nur return einfach*/ } free(s); return hal;/*da bin ich mir auch nicht sicher,ob ich return hal machen soll,denn offensichtlich nimmt er es gar nicht an*/ exit(0); } int main(int argc, char* argv[]) { int clientsock =0; char hilf = clientsock; .... while(1){ if(pid == 0){ hallo(&hilf); printf("error"); } } }
danke fuer die hilfe
-
Bitte nicht doppelt
Hier gehts weiter: http://www.c-plusplus.net/forum/viewtopic.php?t=78904