Klassen 'string' har en metode til det: find_first_not_of
string strTal = "0123456789"; string strTest = "12x45"; int iPos = strTest.find_first_not_of(strTal); if (iPos >= 0) cout << "Strengen indeholder andet end tal" << endl;
Hvis det er en string og ikke en char * skal du formodentlig bruge dillebergs, da de indbyggede metoder ofte er bedre end dem vi selv laver, arne_v's kunne måske blive optimeret til noget der ligner de 2 andre hvor dilleberg bruger C++'s standard og jeg bruger C's standard metoder/functioner.
Damn jeg har fået vendt spørgsmålet i mit hoved øv. Jeg tænkte faktisk på strpbrk som returnerer en pointer til den første forekomst i parameter 1 (testme) af et tegn fra parameter 2 ("0123456789"). Men strspn er nok bedre til char *, dog er find_first_not_of det rigtige til string, da man ikke behøver at bruge .c_str() som potentielt en ny allokeret buffer med stengen kopieret over i (=> spild af tid og plads til unødvendig kopiering).
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.