Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [C++] Librerie per le srtinghe

    RAgazzi scusate, qual'è la differenza (sostanziale) tra le librerie per le stringhe
    <string>,<cstring>,<string.h>?

    Diciamo che le funzioni che uso maggiormante sono "substr"e "find" (e forse anche "strlen") oltre alla costante "string::npos".
    Ci sono solo due cose infinite: l'universo e la stupidità umana. Ma non sono del tutto sicuro della prima

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    <string> è l'header che ti consente di utilizzare la classe string del c++ per la gestione delle stringhe. Ovviamente, trattandosi di una classe, in C non esiste

    http://www.cplusplus.com/reference/string/string/

    <cstring> e <string.h> sono la stessa cosa

    http://www.cplusplus.com/reference/clibrary/cstring/

    solo che il primo è l'header secondo lo standard del C++ (senza l'estensione .h) mentre il secondo è il vecchio header file stile C. Sono praticamente equivalenti, ma è considerata buona norma utilizzare i nuovi header quando si programma in C++ anche se, almeno per ora, praticamente tutti i compilatori c++ (che io sappia) accettano entrambi i tipi di header.

    Magari qualcuno saprà essere più preciso (o corretto) di me
    every day above ground is a good one

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Sei stato molto preciso ... la cosa che aggiungerei e' che NON e' bene mischiare le due cose.

    Ovvero, se si programma in C++, e' bene utilizzare

    <string>
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    Quindi devo mettere solo <string> senza <string.h> e <cstring>?
    Ci sono solo due cose infinite: l'universo e la stupidità umana. Ma non sono del tutto sicuro della prima

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    Sì, in quel caso decidi di lavorare solo con la classe string, il che (come diceva Oregon) è preferibile quando si programma in C++ ma questo significa che non potrai usare le funzioni classiche delle stringhe stile C (come strlen, strcmp ecc...), anche perché non ti servirebbero più.

    Ti basta una buona documentazione sulla classe string, con tutti i suoi metodi e gli operatori "sovraccaricati"... quella pagina che ti ho linkato sopra dovrebbe essere sufficiente.
    every day above ground is a good one

  6. #6
    Originariamente inviato da YuYevon
    <string> è l'header che ti consente di utilizzare la classe string del c++ per la gestione delle stringhe. Ovviamente, trattandosi di una classe, in C non esiste

    http://www.cplusplus.com/reference/string/string/

    <cstring> e <string.h> sono la stessa cosa

    http://www.cplusplus.com/reference/clibrary/cstring/

    solo che il primo è l'header secondo lo standard del C++ (senza l'estensione .h) mentre il secondo è il vecchio header file stile C. Sono praticamente equivalenti, ma è considerata buona norma utilizzare i nuovi header quando si programma in C++ anche se, almeno per ora, praticamente tutti i compilatori c++ (che io sappia) accettano entrambi i tipi di header.
    WOW, credo che sia completo, grazie!
    Ci sono solo due cose infinite: l'universo e la stupidità umana. Ma non sono del tutto sicuro della prima

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da YuYevon
    ... quella pagina che ti ho linkato sopra dovrebbe essere sufficiente.
    Anche se un buon libro da studiare prima di iniziare a programmare, non guasterebbe ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2008
    Messaggi
    1,326
    Sì infatti, quello lo davo quasi per scontato
    every day above ground is a good one

  9. #9
    Ho studiato il linguaggio del C e prima di conoscere questo forum pensavo che fosse una specie di sottolinguaggio del C++ ma grazie a tutte le vostre raccomandazioni ho scoperto che in effetti cambiano molte cose (a parte la programmazione ad oggetti ovviamente...)
    Con le funzioni APPOSITE del C++ va venissimo, grazie!!!
    Ci sono solo due cose infinite: l'universo e la stupidità umana. Ma non sono del tutto sicuro della prima

  10. #10
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da giulio.dr
    Ho studiato il linguaggio del C e prima di conoscere questo forum pensavo che fosse una specie di sottolinguaggio del C++ ma grazie a tutte le vostre raccomandazioni ho scoperto che in effetti cambiano molte cose (a parte la programmazione ad oggetti ovviamente...)
    Con le funzioni APPOSITE del C++ va venissimo, grazie!!!
    Sì ... ma, a vedere dai problemi e dal codice, non hai acquisito bene neanche il C perche', probabilmente, non hai mai studiato da un libro ...

    E il C++ non è una semplificazione del C ... è un altro linguaggio, con un altro modo di programmare che, a maggior ragione, va studiato sui libri ...

    Soprattutto, mi sembra profondamente sbagliato iniziare un programma "abbastanza complesso" senza conoscere il linguaggio ... bisognerebbe partire da programmini molto più semplici ... (e dotarsi di uno strumento più moderno e potente del DevC++ ...)
    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.