C语言char类型和int类型相互转换问题
来源:互联网 发布:上海网络推广哪家好 编辑:程序博客网 时间:2024/05/19 17:56
刚看了C程序设计语言这本教材,一开始就有很多迷惑不解的地方:
1.字符转换问题 char和int类型是如何转换的?
2.getchar()接收多个字符时,是如何依次打印出来的?
3.EOF是什么,如果打印出来它的值?
对于char类型,
在Java中,
数据类型是可以从低精度向高精度转换的
byte 、short、int、long、float、double、char
ex: int i = 97; char c = (char) i;
从高精度向低精度可以通过类包装器进行转换
ex: char c = 'a'; int m = (int) c; String s = "555"; int n = Integer.parseInt(s);
那么在C语言中呢:
从下面的一个示例中:
#include<stdio.h> main() { int c = 97; c=getchar();//@1 while(c != EOF) { putchar(c); printf("%d\n", c); c = getchar();//@2 } }
char类型是用来定义一个字符的,
当使用@1列的getchar()方法输入一个字符串时,c只读取第一个字符,
然后打印出c的值,再通过@2列的getchar()方法遍历剩余的字符,直到结束。
putchar()函数可以将int类型转换为char类型。
打印EOF的值:
printf("%d\n", EOF);
手动输入结束符:在Linux的shell中是Ctrl + D
这里还有一个问题,为什么将保存字符的对象定义成int类型呢,根据书上的意思,char类型专门用于存储这种字符型数据,当然任何int也可以用于存储字符数据,但是由于EOF是一个整形数,与任何char类型的值都不相同,所以为了防止getchar的时候产生溢出,将对象定义成int类型。
- C语言char类型和int类型相互转换问题
- 关于int类型指针和char类型指针相互转换问题
- cstring和相关类型的相互转换int,double,char*
- java中char和int类型的相互转换
- string,char,int类型的相互转换
- String类型和int类型相互转换
- C语言中int,duoble数据转换为char类型
- C语言中类型转换:char转unsigned int
- int类型与char,string类型数据的相互转换
- C语言char强制类型转换unsigned int时的问题
- c++ CString string char* char int类型的相互转换
- C++/MFC-CHAR和WCHAR类型的相互转换
- C++中单个数字的int类型和char类型之间的相互转换
- Java中char和int类型的转换问题
- java学习---char和int的类型转换问题
- string与int和char之间的类型转换问题
- Qt类型转换 QString,int,char,QByteArray之间相互转换
- string 和 int类型的相互转换
- KML+教程
- LAMP一键安装
- Hibernate模糊查询
- 用AMI实现通话录音功能
- 堆排序
- C语言char类型和int类型相互转换问题
- 滚动条 一
- 装centos和 win7双系统的总结
- cvInitMatHeader的一些问题
- CP异常终止(reset报文)
- LNMP一键安装
- oracle创建简单的包
- file的getPath getAbsolutePath和getCanonicalPath的不同
- UIWebView之获取所点位置图片URL