c语言 字符型转换成整型
来源:百度知道 编辑:UC知道 时间:2024/09/25 20:37:56
#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 <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 * str)
你程序里输入是字符char,而不是字符串char *,所以不行。
而且你输入的字符串必须以\0结尾,否则也会出错
比如char ch[] = "12345";
int num = atoi(ch)就是对的
不知道你要实现什么:
按你的程序,这样改:
#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);
}
#include <stdio.h>
#include <stdlib.h>
int main ()
{
int str;
char ch;
printf ("input :");