Autor Zpráva
error414-
Profil *
cau zacinam se ucit c/c++ zatim jsem zvladal jen php
nefunguje me nasledujici kod
#include <iostream>
#include <ctype.h>

using namespace std;

int main(int argc, char *argv[])
{

int pc = 6;
if (isdigit(pc)) {
printf("isdigit");

}else{
printf("isdigit NO");
}

system("PAUSE");
return EXIT_SUCCESS;
}

podle me to ma vypsat ze je to cislo ale nevypise, tak se ptam proc?
nightfish
Profil
Prototype: int isdigit(int Character);
Explanation: This function accepts an ASCII value, and returns whether or not it is a digit (0 to 9) when converted to its equivalent ASCII character. It returns a zero if it is not a digit, and non-zero if it is.

tzn. funkce přijímá ASCII hodnotu - tzn. ty jí předáš 6, což je ACK
na to, aby vracela true, jí musíš poslat hodnotu od 48 do 57 (ASCII kódy číslic 0 až 9)
arcadosi
Profil
no neviem ale asi z toho co si mu napisal velmy nepochopil co ma spravit :)
teda ja som tiez zacal s C++ vela som toho este neprecital ale z toho tvojho vysvetlenia som ja proste wol :)
jozob
Profil
Je to úplne jednoduché, ako napísal nightfish. Tá funkcia zisťuje, či je vstupný parameter (po prevode z ASCII kódu) číslicou.
thingwath
Profil
Ono je třeba si uvědomit, že tyhle isxyz funkce pracují s řetězci, pro int by to nedávalo smysl, ať už tam nacpete co chcete, stejně to v každém případě je číslo :-)
Toto téma je uzamčeno. Odpověď nelze zaslat.

0