c语言 字符型转换成整型

#include <stdio.h>
#include <stdlib.h>
void main ()
{
int str;
char ch;
printf ("input :");
ch=getchar();

str=atoi(ch);
printf ("str=%c\n",str);

}

为什么我这程序会弹出错误?

字符串转成整型可以使用atoi函数。

函数原型:int atoi(const char *nptr);

功能:把字符串转换成整型数。

参数nptr字符串,如果第一个非空格字符存在,是数字或者正负号则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。否则,返回零。

扩展资料:

整型转换成字符型

使用itoa函数。原型:extern char *itoa(int i);

参考代码:

#include<stdio.h>

#include<stdlib.h>

int main()

{

int a=125;

char b[50];   

printf("%s\n",itoa(a,b,10));//把10进制的125转成字符并输出。

return 0;

}

/*

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-15
楼上的,你的第一个程序应该会出错.

atoi函数的原型是

int atoi(const char * str)

你程序里输入是字符char,而不是字符串char *,所以不行。

而且你输入的字符串必须以\0结尾,否则也会出错

比如char ch[] = "12345";

int num = atoi(ch)就是对的本回答被提问者采纳
第2个回答  2019-10-28
了。
#include
<stdio.h>
void
main()
{
char
a='9';
int
b=a-'0';
//
int
b=a;如果这样写,b的值是57,就不对了。但是都转换为57这样的asc码也可以作为一种加密方式,是否这样操作就由你决定。
printf("%d\n",b);//这样输出的b为9,是整形的。
}
至于加密,规则没有规定,因为加密的时候只有规则是保密的才算是加密,所以没有统一规定,很简单的加密就是颠倒数字顺序,大写变小写,字符变代码(你也可以自己规定代码规则),加减数字,首末掉换。。。总之怎么弄的规则你来定。
第3个回答  2020-02-13
了。
#include
<stdio.h>
void
main()
{
char
a='9';
int
b=a-'0';
//
int
b=a;如果这样写,b的值是57,就不对了。但是都转换为57这样的asc码也可以作为一种加密方式,是否这样操作就由你决定。
printf("%d\n",b);//这样输出的b为9,是整形的。
}
至于加密,规则没有规定,因为加密的时候只有规则是保密的才算是加密,所以没有统一规定,很简单的加密就是颠倒数字顺序,大写变小写,字符变代码(你也可以自己规定代码规则),加减数字,首末掉换。。。总之怎么弄的规则你来定。
第4个回答  2008-05-04
不知道你要实现什么:
按你的程序,这样改:

#include <stdio.h>
#include <stdlib.h>
void main ()
{
int str;
char ch;
printf ("input :");
ch=getchar();

str=atoi(&ch);
printf ("str=%c\n",str);

}

字符型转换成整型,这样改:

#include <stdio.h>
#include <stdlib.h>
void main ()
{
int str;
char ch;
printf ("input :");
ch=getchar();

str=(int)ch;
printf ("str=0x%x\n",str);

}

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

怎样把输入的字符型数字转换成整形输出
在C语言中将字符串转化成整型有两种方法。1 用atoi函数。 atoi的功能就是将字符串转为整型并返回。其声明为 int atoi(char *str); 比如atoi("1234");会返回整型1234。 要调用atoi,需要引用头文件stdio.h 2 用sscanf。 sscanf与标准格式化输入函数scanf类似,不过源并非是标准输入,而是字符串。 用...

c语言代码,输入三个字符型数据,将其转换成相应的整数后,求它们的平均值...
首先,我们需要包含必要的头文件,这里需要`stdio.h`。然后声明三个字符型变量,用于存储用户输入的字符。接下来,通过`scanf`函数读取用户输入的三个字符,并将它们存储在相应的变量中。接下来,将这些字符转换为整数。在C语言中,可以通过简单的类型转换来实现这一点。例如,可以使用`(int)`将字符转换...

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

为什么C语言中字符会自动转变为整型数据?
在C语言中,字符会自动转换为整型数据的原因与C语言的数据类型和类型提升规则有关。C语言中的字符通常表示为字符型,但字符型实际上是整数类型的子类型。以下是一些相关的概念和规则:字符类型(char):在C语言中,字符类型(char)用于表示单个字符。字符在内部存储时通常以ASCII码或其他字符编码的整数值...

如何用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); return 0;}\/*输出:int = ...

C语言字符转换成整形的方法是什么?
转换有两种方法:第一种用“atoi”的:#include "stdio.h"#include "stdlib.h"#include "conio.h"void main(){char str[1024] = {0};int Interger;printf("输入一个数字:\\n");scanf("%s", str);Interger = atoi(str);printf("转换为整形:%d\\n", Interger);getch();}第二种:#...

c语言中字符型转化为整型
字符型数据转换成整形数据时,实际上是转换成该字符所对应的ASCII编码值。另外,字符型和整型其实之间可以互相直接转换,也就是字符型数据可以按整型输出,整形数据也可按字符型输出,至于输入,直接定义类型就可以了。你没说明问题是什么,我也只能简单的说一下了。这里其实没必要用什么强制类型转换,对于...

C语言:把数字字符串转换成整型数字
程序如下:若输入字符串"ab56cd87",则输出结果:以%d格式输出十进制整数5687;若输入字符串"-ab56cd87",则输出结果:以%d格式输出十进制整数-5687。

c如何将字符1转换为整型数1
c如何将字符1转换为整型数1:第一种:用数字字付出减去'0'即'1'-'0'(它俩是用ASCII码相减的即49-48=1)。第二种:用数字字付出减去48(48是‘0’的ASCII码)即'1'-48=1。例如想把‘2’转为2 int k;char b='2'k=b-48或k=b-'0'C:C语言是一门通用计算机编程语言,应用广泛。C...

相似回答