#include <stdio.h> /** 类型转换 --在C语言中整型、实型和字符型三种数据可以进行类型转换而进行混合运算 --并不是所有的数据类型之间都可以进行类型转换,例如指针就不可以和这三种数据之间进行类型转换 --字符型数据和整型数据发生类型转换时,字符型必先转换为整数,C语言规定,字符型数据和整型数据之间可以通用,这也是下面把字符型和整型数据算作同一类型的依据 --short数据也是必先转为int型数据,他们同属于整型数据 --float数据在运算时一律转换为double类型,以提高运算精度 --不同类型的数据发生转换时,遵循低级类型向高级类型转换的规则, --int和double类型发生转换时,int类型转换为double类型再进行运算,结果为double类型 */ int main(void) { //定义和赋值变量 int a = 5; float b = 6.254894; double c = 9.254; char d = 'o'; double result; /** 同类型数据间进行运算并输出 -- 先解释一下char类型,char类型是整型数据之一,但是用来定义字符型变量; -- 整型和字符型相加,转换为整型,会把字符转换为ASCII值然后进行运算 -- 整型和字符型相加,转换为ASCII字元时,会把字符转换为ASCII值然后进行运算,然后把他们的和转换为ASCII控制字符 */ printf("a + d = %d\n",a + d ); //输出结果为116 printf("a + d = %c\n",a + d ); //输出结果为t printf("b + c = %f\n",c + b ); //输出结果为15.508894 /** 不同类型数据间进行运算并输出 */ printf("a + c = %f\n",a + c ); //输出结果为14.254000 printf("d + b = %f\n",b + d ); // 输出结果为117.254894 /** 进行混合运算 */ result = a + d * (b + c); printf("result = %f\n",result ); //值为 1726.487210 根据运算法则,最后的值应该是double类型的 return 0; }
关于类型转换--C语言
猜你喜欢
转载自www.cnblogs.com/starshine-zhp/p/12370216.html
今日推荐
周排行