Я новичок в C, и я натолкнулся на такой код:
int n[10];
if(c>='0' && c<='9')
++n[c-'0']
В цикле if
, почему мы должны использовать одинарные кавычки вокруг 0
, что его использовать, почему мы не можем сразу определить 0
как целое число? А во второй строке кода ++n[c-'0']
, зачем использовать такой массив, в смысле, почему нам нужно вычитать 0
(еще раз, почему использование одинарных кавычек в этом контексте?) Из c
в индекс массива?
Если мне нравится это n[c-'0']
, результатом операции индекса (c-'0'
) будет символ или целое число?
Учитывая, что кто-нибудь может сказать мне, каково реальное использование такого массива и каковы его недостатки?
Спасибо заранее.