我想弄清楚如何转换字符数,比如说
char num = "1";
与整数相同的数字所以
char num = "1"; would be converted to int numc = "1";
我能想到的唯一方法是手动执行一堆 if 语句,这似乎有点过分,所以我想知道是否有人知道更简单的方法来做到这一点?谢谢!
最佳答案
在 C 中,字符实际上只是表示其字符值的数字,因此:
char ch = '1';
int num = ch - '0';
printf("ch=%c num=%d\n", ch, num);
这利用了这样一个事实,即在所有常见字符集中,字符值 '0'
到 '9'
是按顺序分配的。
另请注意,char
值用单 引号括起来,而多字符字符串则用双 引号括起来。
关于c - 如何将表示数字的 char 字符转换为 int 中的相同数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10627905/