bhà ho dato un'occhiata al codice...anche se non ho ben capito cosa t serve e cosa dovrebbe stampare quella seconda printf() ho interpretato un pò e ho cercato solo di farla stampare! dimmi se è quello che cercavi o se ho fatto tutt'altro!!
posto il codice qua:
ciao ciaocodice:#include <stdio.h> #include <stdlib.h> #include <string.h> struct mia { char primo[15]; }; void tokenizer(char * bufferIn, struct mia *mia); int gestore_licenze (char *bufferIn, char *bufferOut); int main () { char bufferIn[]="F|V|F|1|0|0|0"; char *bufferOut; int ret; printf("Avviato main\n"); printf("buffer da spacchettare: %s\n", bufferIn); ret = gestore_licenze(bufferIn, bufferOut); printf("Terminato main\n"); system ("pause"); return 0; } void tokenizer(char* bufferIn, struct mia *mia) { char *pch; pch = strtok (bufferIn, "|"); if (pch != NULL) { strcpy((*mia).primo, pch); strcat((*mia).primo, "\n"); printf("primo: %s\n", (*mia).primo); } } int gestore_licenze (char *bufferIn, char *bufferOut) { struct mia mia; char risposta[15]; tokenizer(bufferIn,&mia); if (strcmp(mia.primo, "F") != 0) { strcpy(risposta, "OK|"); printf("%s\n", mia.primo); strcat(risposta, mia.primo); } }

Rispondi quotando