Cześć!
To mój pierwszy post na forum więc witam wszystkich użytkowników :)
Mam prośbę: czy ktoś mógłby mi wytłumaczyć jak działa element kodu programu, którego listing wklejam poniżej?
#include <stdio.h>
int main()
{
int c, i, nwhite, nother;
int ndigit[10];
nwhite = nother = 0;
for(i = 0; i < 10; ++i)
ndigit[i] = 0;
while((c = getchar()) != EOF)
{
if(c >= '0' && c <= '9')
++ndigit[c - '0'];
else if(c == ' ' || c == '\n' || c == '\t')
++nwhite;
else
++nother;
}
printf("Cyfry = ");
for(i = 0; i < 10; ++i)
printf(" %d", ndigit[i]);
printf(", białe znaki = %d, inne = %d.\n", nwhite, nother);
}
Mianowicie chodzi mi o fragment:
++ndigit[c - '0'];
Co się dzieje w tej linijce kodu? Program pochodzi z książki "Język ANSI C", ale nie potrafię zrozumieć tłumaczenia, które jest tam zamieszczone. Element "c" - 0 w formie tekstowej...?