Visualizzazione dei risultati da 1 a 2 su 2

Discussione: [C++]Contare gli spazi

  1. #1

    [C++]Contare gli spazi

    Dovrei contare gli spazi contenuti in una stringa e avrei pensato a questa funz:
    codice:
     
    int Spazi(string &st)
    {
        int spazi_cont;
        string::iterator it=st.begin();
        for( ; it != st.end(); it++) 
        {
            if( st.find(" ") != string::npos )
            {
            	spazi_cont++;           
            } 
            if( st.find("\0") != string::npos )
            {
                    break;
            }    
        }  
        return spazi_cont;
    }
    Ma mi trova 30000 spazi
    La stupidità umana e l'universo sono infinite.
    Della seconda non sono certo(Einstein)

    Gnu/Linux User

  2. #2
    Utente di HTML.it L'avatar di dany-
    Registrato dal
    Jul 2000
    Messaggi
    365
    Scusa, perché non usi la funzione api per la ricerca del primo carattere a partire dalla posizione corrente in una stringa, gli passi il puntatore all'inizio della stringa, quando ne trova uno incrementi un contatore tuo e riparti con la ricerca a partire dal carattere successivo a quello trovato nella stringa?
    Penso che sia anche più veloce perché la funzione è di sicuro codificata in ASM.

    Ciao
    Daniele

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.