Domanda

ho dichiarato un array di stringhe String s;

Ho provato a trovare la lunghezza della stringa, dando strlen (s), ma non ha funzionato. Come ottenere la lunghezza della stringa?

È stato utile?

Soluzione

La funzione strlen non prende una stringa, ma una serie di caratteri. Si prega di consultare questo di riferimento per gli esempi. Se si utilizza la stringa di tipo troverete la sua lunghezza utilizzando la funzione lunghezza () , in questo modo:

std::string text = "Some text"; 
int length = text.length(); 

Per ulteriori esempi vedere quest'altra domanda .

Altri suggerimenti

Usa la lunghezza funzione membro ().

string s;

dichiara una string nome s, non un array di stringhe, che sarebbe

string array[10];

per esempio. Per ottenere la lunghezza di una stringa, si chiama il suo metodo size() o length():

size_t len = s.size();

Un sacco di metodi che ho visto prendere un const char * (che potrebbe anche essere la 'stringa' che lui sta riferendosi a) ciclo volontà attraverso la variabile fino a colpire un carattere null \0.

Questo spesso è il modo sono finite 'array di stringhe' e di solito è una buona sosta per calcolare la lunghezza della stringa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top