Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » CString: wie feststellen ob er aus zahlen besteht??

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
11.05.2005, 10:16 Uhr
sashka



Hallo,
wie kann ich feststellen ob ein CString nur aus zahlen besteht??
ich kann das zwar herausfinden indem ich in einer schleife alle zeichen nacheinander vergleiche, aer vielleicht gibt es ja auch eine ganz einfache funktion dafür!? ;-)

Gruß
Sashka
--
Es ist egal was man macht, hautsache man macht etwas!!!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
11.05.2005, 10:20 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


eine einfachere möglichkeit wär folgende:


C++:
CString str;
// ...

int zahl = atoi(str);
if(zahl == 0 && str[0] != '0')
  // keine zahl
else
  // zahl


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
11.05.2005, 10:37 Uhr
sashka



hi,
danke für die schnelle antwort, aber leider funktioniert es nicht ganz so wie es sollte...!
Sobald auch nur eine zahl in dem string ist, sagt er mir es ist eine zahl... es dürfen sich aber überhaupt keine buchstaben in dem string befinden...
--
Es ist egal was man macht, hautsache man macht etwas!!!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
11.05.2005, 11:27 Uhr
Tommix



Hallo

C++:
bool NurZiffern(const CString& str)
{
    int len = str.GetLength();

    for (int i = 0; i < len; ++i)
        if ((str[i] < '0') || (str[i] > '9')) return false;

    return true;
}



- Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
11.05.2005, 13:00 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


oder mit isdigit
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
12.05.2005, 18:06 Uhr
Spacelord
Hoffnungsloser Fall


Oder mit istringstream


C++:
bool CStringToLong(CString& str,long& l)
{
    bool result=false;
    long temp=0;
    istringstream sst(str.operator LPCTSTR());
    sst>>temp;
    int g = sst.tellg();

    if(str.GetLength() == g)
    {
        l=temp;
        result=true;
    }

    return result;
}



MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: