C++ Funktion isdigit(); geht nicht
Stefan H.
- programmiertechnik
guten abend,
die funktion isdigit(); gehört zu den bearbeitungsfunktionen von char in c++ und ist im namespace std enthalten. zu c zeiten noch zusammengefasst in <ctype.h>.
wenn ich die funktion aufrufe bekomme ich mit dev-c++ version 4 jedoch folgende fehlermeldung:
implict declaration of of funktion 'int isdigit(...)'
auch mit ganz einfachen beispielen wie: if(isdigit(1)){...} erhalte ich diese fehlermeldung.
danke für konstruktive unterstützung.
Also hier funktioniert es einwandfrei:
#include <iostream>
#include <cctype>
int main ()
{
std::cout << "Ist 9 eine Ziffer? ";
if (isdigit ('9'))
std::cout << "ja" << std::endl;
else
std::cout << "nein" << std::endl;
return 0;
}
Vielleicht ein c vergessen?
Gruß
L00NIX
aha, das c also... ich frage mich wieso (kenne das ohne doppel c).
aber jetzt funktioniert es. vielen dank L00NIX
Hallo
aha, das c also... ich frage mich wieso (kenne das ohne doppel c).
aber jetzt funktioniert es.
Ganz einfach:
Man schreibt in C++ auch nicht mehr die .h an die Header Dateien, es
sei denn, es sind C-Header. Die Standard C-Header wie z.B. stdio,
stdlib, ctype etc. werden mit führendem c eingebunden, also cstdio,
cstdlib und cctype, denn nur so sind die Funktionen in den
std-Namespace eingebunden. Das c symbolisiert, dass es sich um einen
C-Header handelt.
Gruß
L00NIX