【C语言学习】数据类型转换

本文介绍了C语言中两种类型转换方式:自动类型转换和强制类型转换。自动转换发生于不同数据类型运算时,会将较小类型提升到较大类型。在printf中,所有小类型会转换为int或double。而scanf不进行自动转换,输入short需要使用%hd。强制类型转换通过(类型)值完成,但需要注意转换安全性,避免超出目标类型范围,且不会改变原始变量的值和类型。强制转换的优先级高于常规算术运算。
摘要由CSDN通过智能技术生成

一、自动类型转换

1.当运算符两边的数据类型不同时,C语言会帮我们将其转换为较大的类型。即将数据转换成表达范围更大的类型。

将前一种类型转换为后一种类型
char --> short --> int --> long --> long long  
int --> float --> double

2.对于printf,任何小于int 的类型都会变转换成int;float会被转换成double

printf ("%f\n", a); \\无论是“float”还是“double”输出时都用"%f"即可,就是因为C语言会把float类型转换成double类型。

3.但是scanf不会,如果要输入short,需要%hd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值