数据转换

隐式类型转换:算术转换、赋值转换、输出转换

算术转换

double→int和int→double:

arduino 复制代码
#include <stdio.h>
int main(){
int a = 1 + 3.2;
double b = a * 1.2;
a = 5.8;//int 隐式转换,5.8→Int 
printf("a = %d b = %f.2", a, b);
//int c = 10/3; 结果为0
//int c = 1/2;  结果为0
//double c = 1/2; 结果为0.0
double c = 1.0/2;
//1.0是浮点数 "/"是除法 2是整数,所以2→2.0   1.0/2→1.0/2.0
printf("c = %.2f", c);
//print("c = %d", c);  #double类型的变量,使用%d的格式输出,就会有问题
}

运行结果:

char→int:

perl 复制代码
char c = 'a';
printf("%c", c);
printf("\n");
printf("%d", c); // %d是int
	
printf("%c", 97); //把整数97当成字符输出显示
printf("\n");
printf("%c", 'a' + 1);//把'a' + 1算出来,在当成字符输出显示
printf("\n");
printf("%c", 'P'/2);//把'P' + 1算出来,在当成字符输出显示

运行结果:

显式类型转换

显式类型转换也称为强制类型转换,是指使用强制类型转换运算符,将一个变量或表达式转化成所需的类型。

perl 复制代码
int a = (int)(1.9);
char b = (char)(62.5); //double 62.5→62→>
int c = (int)('a'+2.5*3);//'a'→97
printf("%d\n", a);
printf("%c\n", b);
printf("%d\n", c);

运行结果:

相关推荐
码界奇点1 小时前
基于Flask与OpenSSL的自签证书管理系统设计与实现
后端·python·flask·毕业设计·飞书·源代码管理
代码匠心2 小时前
从零开始学Flink:状态管理与容错机制
java·大数据·后端·flink·大数据处理
分享牛2 小时前
LangChain4j从入门到精通-11-结构化输出
后端·python·flask
知识即是力量ol3 小时前
在客户端直接上传文件到OSS
java·后端·客户端·阿里云oss·客户端直传
闻哥3 小时前
深入理解 Spring @Conditional 注解:原理与实战
java·jvm·后端·python·spring
qq_256247054 小时前
Google 账号防封全攻略:从避坑、保号到申诉解封
后端
MX_93595 小时前
使用Spring的BeanFactoryPostProcessor扩展点完成自定义注解扫描
java·后端·spring
弹简特5 小时前
【JavaEE05-后端部分】使用idea社区版从零开始创建第一个 SpringBoot 程序
java·spring boot·后端
爬山算法5 小时前
Hibernate(81)如何在数据同步中使用Hibernate?
java·后端·hibernate
Ivanqhz5 小时前
现代异构高性能计算(HPC)集群节点架构
开发语言·人工智能·后端·算法·架构·云计算·边缘计算