C++:
Trovare la lunghezza di una stringa
How to:
#include <iostream>
#include <string>
int main() {
std::string saluto = "Ciao, mondo!";
// Uso la funzione 'length' per ottenere la lunghezza della stringa
std::cout << "Lunghezza della stringa: " << saluto.length() << std::endl;
return 0;
}Output:
Lunghezza della stringa: 13Deep Dive
Inizialmente, in C, la lunghezza di una stringa veniva trovata con strlen, che conta i caratteri fino al terminatore NULL ('\0'). In C++, con la std::string class, length() e size() fanno la stessa cosa e sono più sicuri perché gestiscono la memoria automaticamente.
Le alternative includono:
- Cicli manuali: contare carattere per carattere fino a
'\0'. - Funzioni della libreria C come
strlen(meno sicure). - Operazioni su range in C++11 o superiore (
std::begin,std::end).
Dettagli sull’implementazione:
std::string::size()è garantito essere di complessità O(1) – veloce.- Le stringhe in C++ sono oggetti, non solo array, perciò offrono sicurezza e flessibilità aggiuntive.
See Also
- Standard Template Library (STL): http://www.cplusplus.com/reference/string/string/
- C++ Reference for
std::string::length: https://en.cppreference.com/w/cpp/string/basic_string/length - C++ Reference for
beginandend: https://en.cppreference.com/w/cpp/iterator/begin - Learn more about the
strlenfunction: http://www.cplusplus.com/reference/cstring/strlen/