将字符数字转换为C中的相应整数

有没有办法将字符转换为C中的整数?

例如,从’5’到5?

最佳答案
根据其他回复,这很好:

char c = '5';
int x = c - '0';

另外,对于错误检查,您可能希望首先检查isdigit(c)是否为真.请注意,对于字母,您无法完全相同地执行相同操作,例如:

char c = 'b';
int x = c - 'a'; // x is now not necessarily 1

该标准保证数字’0’到’9’的char值是连续的,但不保证其他字符如字母表的字母.

转载注明原文:将字符数字转换为C中的相应整数 - 代码日志