[elektro] C csodálkozás

Skandar Graun sgraun at gmail.com
Tue Oct 1 19:50:48 CEST 2013


Sziasztok.
Találtam egy rutint a neten:
unsigned int htoi (const char *ptr)
{
unsigned int value = 0;
char ch = *ptr;

/*--------------------------------------------------------------------------*/

while (ch == ' ' || ch == '\t')
ch = *(++ptr);

for (;;) {

if (ch >= '0' && ch <= '9')
value = (value << 4) + (ch - '0');
else if (ch >= 'A' && ch <= 'F')
value = (value << 4) + (ch - 'A' + 10);
else if (ch >= 'a' && ch <= 'f')
value = (value << 4) + (ch - 'a' + 10);
else
return value;
ch = *(++ptr);
}
}

A jórésze érthető, felfogható. Erre is van szükségem.
Csak egy dolog lepett meg: a " for (;;)" utasítás.
Lefordul, vagyis műxik. Csak nem tudom, mit csinál.
Tudtok segíteni?


More information about the Elektro mailing list