Interview Questions

How can I get the numeric value corresponding to a character?

C Interview Questions and Answers


(Continued from previous question...)

How can I get the numeric value corresponding to a character?

Q: How can I get the numeric value (i.e. ASCII or other character set code) corresponding to a character, or vice versa?

A: In C, characters are represented by small integers corresponding to their values in the machine's character set. Therefore, you don't need a conversion function: if you have the character, you have its value. The following fragment:
int c1 = 'A', c2 = 65;
printf("%c %d %c %d\n", c1, c1, c2, c2);

prints
A 65 A 65
on an ASCII machine.
To convert back and forth between the digit characters and the corresponding integers in the range 0-9, add or subtract the constant '0' (that is, the character value '0').

(Continued on next question...)

Other Interview Questions