C语言 如何将char 单字符型转成int型???

我这里说的不是字符串型.单字符atoi()的话不能用
比如 char key='1' 转成int 的 1;
哪位高手能告诉我,谢谢

char a='1';
char base='0';
int i = (int)a - (int)base;
//可以简单点写一个宏
#define ATOI(X) ( (X) - 30)

原理就是字符型实际是存储的整数,具体数值可查ASCII表,而数字0-9的ASCII是相邻的,数字字符通过减去基础的'0'的ASCII码值,就能得到对应的字符代表的实际数字,然后赋值给其他数字型变量即可。

下面是ASCII表

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-14
int a='key'-'0'
将char 字符转换为 ASCII码 减去0的 ASCII码 它们的差值就是int 型的数值本回答被网友采纳
第2个回答  2017-06-21
int i;
char key = '1';
i = key-'0';

第3个回答  2013-08-14
char c='1';
int i;
i=c-'0';
第4个回答  2017-06-19
int x = key - '0';

C语言 如何将char 单字符型转成int型???
将char 字符转换为 ASCII码 减去0的 ASCII码 它们的差值就是int 型的数值

C语言 如何将char 单字符型转成int型???
char a='1';char base='0';int i = (int)a - (int)base;\/\/可以简单点写一个宏#define ATOI(X) ( (X) - 30)原理就是字符型实际是存储的整数,具体数值可查ASCII表,而数字0-9的ASCII是相邻的,数字字符通过减去基础的'0'的ASCII码值,就能得到对应的字符代表的实际数字,然后赋值给其...

怎么把char转成int
char转成int的方法:C语言中char类型本身就是整型类数据变量,可以直接赋值给int变量。char占一个字节内存空间,可表示的有符号数为-128~127,无符号数0~255。C语言中字符是按其ascii值进行存储的,如,字母‘a’,其实际存储在内存中的数据为97,只是在输出时,因格式串的不同,表现出来的形式不同...

c语言char型字符串转换成int型字符串
第一种办法:通过charAt(i),把字符串的每位变成char型,然后用当前字符减去字符0(temp_char-'0'),得到当前字符的int值。第二种办法:把字符再转成字符串,然后再强制转换成int型。2、把字符串拆分成一位一位的 第一种方法:循环后charAt(i);注意:charAt(i)得到的是字符串对应的每位字符,...

char*怎样转成int
可以通过使用库函数atof或者strtol等实现将char*转换为int。详细解释如下:使用atof函数转换 在C语言中,atof函数是一个标准库函数,用于将字符串形式的浮点数转换为双精度浮点数。虽然它返回的是double类型,但你可以将结果强制转换为int类型。如果字符串表示的数值是整数,使用atof并强制转换是可以工作的。

C语言中 怎么转换char到int
char a = 'A'那么执行如下:int b = a;那么此时的b = 65,就是把char转化为int了。将int转化为char方法同上~~但是要注意的是内存的一出问题~最好别做int转化为char,因为在当今64位系统下,char是1个字节,而int是2个字节~从2个字节转化为一个字节会出现内存泄漏~~但是从1个字节转化为2个...

C语言char类型的123怎么转换成 int类型的123?
char* 或者是 char a[]类型,不应该是 char类型吧 第二:如果是char* 类型的话或者char a[]类型则可以使用以下代码转换成整数 int charsToInt(char *a,int length){ int res = 0;for(int i = 0;i<length;i++){ int temp = a[i] - '0';res = res*10+temp;} return res;} ...

c语言把char转换成int
include <stdlib.h> int atoi(const char *nptr);long atol(const char *nptr);long long atoll(const char *nptr);long long atoq(const char *nptr);

字符串如何转成int型?
1.使用c语言自带的库函数:atoi。函数原型:int atoi(const char *nptr);功能:把字符串转成整型数。例如:include <stdlib.h>#include <stdio.h> int main(void){ int n; char *str = "12345"; n = atoi(str); printf("int=%d\\n",n); return 0;}\/*输出:int = ...

c语言中如何将字符串转化成整数型并输出
c语言中,可以使用atoi()函数将字符串转化成整数型并输出。 atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数,应用在计算机程序和办公软件中。int atoi(const char *nptr) 函数会扫描参数 nptr字符串,会跳过前面的空白字符(例如空格,tab缩进)等。 如果 nptr不能转换成 int 或者 ...

相似回答