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

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

第1个回答  2019-12-15
int
a='key'-'0'
将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码值,就能得到对应的字符代表的实际数字,然后赋值给其...

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

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

c语言中实现输入一个数字字符,然后转换成整数数字输出.怎么做?
字符串转整数可以有两种方法: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); r...

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);

C语言char类型的123怎么转换成 int类型的123?
第一:a应该是 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;} ...

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

c语言把char转换成int
'0x04';确实不对,第一,用单引号,不是一个数组,说是字符串也不对,c里面字符串不用第一号。单引号只能用在一个字符的身上。转化的话,其实连强制转都不用 char c = 'a';int a = c;或者你打印的时候用:printf("%d",c);就直接是十进制数字了 ...

c语言 字符型转换成整型
字符串转成整型可以使用atoi函数。函数原型:int atoi(const char *nptr);功能:把字符串转换成整型数。参数nptr字符串,如果第一个非空格字符存在,是数字或者正负号则开始做类型转换,之后检测到非数字(包括结束符 \\0) 字符时停止转换,返回整型数。否则,返回零。

C语言中的类型转换
类型转换通常自动进行,确保运算顺利进行。转换依据类型级别,从低到高依次为:char < short < int < long < float < double。注意,char和unsigned char转换为int,而无符号类型通常优先于有符号类型。在进行整型运算时,结果将丢失小数部分。为保留小数部分,必须在运算符两边添加浮点类型。对于字面常量...

相似回答
大家正在搜