Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    44

    [C] Concatenare stringhe

    Ciao, ho il seguente problema: ho quattro stringhe così dichiarate

    codice:
    char * a, *b, *c, *d;
    Devo creare una stringa concatenado le quattro stringhe, ma devono essere separate da '\0', come posso fare?

    Esempio
    a = ciao
    b=pippo
    c=come
    d=stai

    devo creare una stringa così: "ciao\0pippo\0come\0stai"

    Grazie

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Intanto fai attenzione perche' quelli sono 4 puntatori, non stringhe (non c'e' lo spazio allocato ...).

    Per concatenare in quel modo, devi usare una funzione di copia di memoria, ad esempio la memcpy. Non usare le funzioni stringa (strcap, strcpy) perche' i caratteri null vengono eliminati e viene conservato solamente l'ultimo.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    44
    Sono riuscito a concatenarle, ora ho il problema di separare la stringa per riavere le stringhe originarie.
    Avrei pensato di usare la sscanf ma ho dei problemi con la stringa di formato.
    Io ho scritto così:

    codice:
    "%[^'\0']%[^'\0']%*['\0']%[^'\0']%*['\0']%s"
    Ma il compilatore mi da un errore per \0. Come posso indicare lì il carattere \0?

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non sto capendo piu' quale sia il tuo problema ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    44
    Scusami forse sono stato poco chiaro. Sono riuscito a costruire la stringa concatenando le quattro stringhe separate da un carattere '\0', ora quello che devo fare è presa questa stringa riottenere le quattro stringhe di partenza.

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Se sei riuscito a concatenare le 4 stringhe, allora le hai gia' le 4 stringhe separate ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    44
    Sto realizzando un client e un server, il client effettua la concatenazione ed invia la stringa al server, il server deve separare la stringa nelle quattro stringhe.

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh ... dirlo prima, dando tutti i dettagli nel primo post, non sarebbe male ...

    Dato che c'e' il carattere nul nella stringa, non puoi utilizzare la funzione strtok, ma devi scorrere la stringa e cercare, carattere per carattere, il nul ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.