数据类型之间的自动转换
2013-03-07 04:57
162 查看
//数据类型之间的自动转换 #include<cstdio> int main() { int n1 = 1378; short n2; char c = 'a'; double d1 = 7.809; double d2; n2 = c; //n2变为97 printf("c=%c,n2=%d\n", c, n2); c = n1; //c变为’b' printf("c=%c,n1=%d\n", c, n1); n1 = d1; //n1 变为7 printf("n1=%d\n", n1); //浮点数自动转换成整数的规则是去掉小数部分,所以d2变为了7. d2 = n1; //d2变为7 printf("d2=%f\n", d2); char cc = 'ab'; printf("%c\n", cc); return 0; } /* 等号的左边是char类型的变量、右边是int类型的变量。语句执行时,先将右边的int值自动转换成一个 char类型的值,再赋值给c。由于char类型的变量只要1个字节,所以自动转换的过程就是丢弃n1的高3字节, 只取n1中最低的那个字节赋值给C。n1的值是1378,表示成十六进制是562,最低的字节是0x62。本条语句执行 完毕后,C的值就是0x62,换算成十进制就是98。98是字母‘b'的ASCII码,因此,本语句执行后,c中就存放着字母’b'. 需要指出的是,本语句的自动转换过程不会改变n1的值。 --书中的解释. 1378 化成二进制为 10101100010; 因为int 为4个字节, char为1个字节(1byte = 8 bit),int转成 char 时,只保留后八位,即c = 1100010(2) = 98(10); 。。 */
相关文章推荐
- java基本数据类型与字符串之间的转换(基本数据类型、对象封装类、自动装箱、自动拆箱)
- 【JAVA学习】java基本数据类型与字符串之间的转换(基本数据类型、对象封装类、自动装箱、自动拆箱)
- java语言基础(59)——jdk5自动装箱和拆箱(基本数据类型与包装类之间的转换)
- JAVA——基本数据类型之间的自动转换
- android数据类型之间转换(系统介绍)
- 解决无法在unicode和非unicode字符串数据类型之间转换的方法详解
- 《Qt数据类型》--基本数据类型QByteArray,QString,char,byte之间的转换
- QT中三种数据类型之间的转换
- Java数据类型的转换:隐式(自动)转换与强制转换
- oc-NSData与其他数据类型之间转换
- 数据类型的自动转换
- 包装类、基本数据类型及String类之间的相互转换
- 使用ASP.NET AJAX异步调用Web Service和页面中的类方法(7):服务器端和客户端数据类型的自动转换:泛型集合类型
- 数据类型之间的转换
- objective-c中不同数据类型之间的相互转换
- Java中八种基本数据类型占用字节空间总结和数据类型之间的转换
- [SQL]不要让SQLServer帮你自动转换SQL命令中的数据类型
- daliu_it java基础笔记之 变量和数据类型以及数据类型之间的转换以及转义字符
- Java 基本数据类型和Sting之间的相互转换
- 类型的转换和多分支语句(函数之间数据的传递)小练习