可能重复:
How to convert a single char into an int
Character to integer in C
任何机构都可以告诉我如何将char
转换为int
吗?
char c[]={'1',':','3'};
int i=int(c[0]);
printf("%d",i);
当我尝试这个时它会给出49。
答案 0 :(得分:152)
在过去,当我们假设大多数计算机使用ASCII时,我们只会这样做
int i = c[0] - '0';
但是在Unicode的这些日子里,这不是一个好主意。如果您的代码必须在非ASCII计算机上运行,那绝不是一个好主意。
编辑:虽然看起来很乱,但显然 可以通过标准来保证工作。谢谢@Earwicker。
答案 1 :(得分:36)
标准函数atoi()
可能会做你想要的。
使用“atoi”的简单示例:
#include <unistd.h>
int main(int argc, char *argv[])
{
int useconds = atoi(argv[1]);
usleep(useconds);
}