Yes.
Code:
#include <stdio.h>
int main(void)
{
char digit;
for (digit = '0'; digit <= '9'; ++digit)
{
printf("'%c' = %d; ", digit, digit);
printf("'%c' - '%c' = ", digit, '0');
printf("%d - %d = ", digit, '0');
printf("%d\n", digit - '0');
}
return 0;
}
/* my output
'0' = 48; '0' - '0' = 48 - 48 = 0
'1' = 49; '1' - '0' = 49 - 48 = 1
'2' = 50; '2' - '0' = 50 - 48 = 2
'3' = 51; '3' - '0' = 51 - 48 = 3
'4' = 52; '4' - '0' = 52 - 48 = 4
'5' = 53; '5' - '0' = 53 - 48 = 5
'6' = 54; '6' - '0' = 54 - 48 = 6
'7' = 55; '7' - '0' = 55 - 48 = 7
'8' = 56; '8' - '0' = 56 - 48 = 8
'9' = 57; '9' - '0' = 57 - 48 = 9
*/
(Although it need not be ASCII.)