C语言中类型转换有两种方式:即强制类型转换和自动类型转换。

一、强制转换比较简单,为:(类型)操作对象。

int n1 = 5, n2 = 2;

float f1 = (float) 5 / 2; //结果为2.5000,若不强制转换结果为2.000

其它类型的自动转换这个一样

二、自动类型转换有以下几个规则

  1. 类型级别低于等于int的,运算结果为int类型。高于int类型,保持高级别类型
  2. 无符号类型级别高于有符号类型(unsigned > signed)
  3. 浮点型级别高于有符号、无符号整型(与浮点运算,结果都为浮点型)
  4. 双精度浮点级别高于单精度浮点(double > float)

#include <stdio.h>
/*
时间:2022-04-05 19:26
作者:sgbl888
功能:C语言类型转换(自动转换、强制转换)一、自动转换:由C语言按规则转换1、低于等于int类型的,转换结果为int类型。高于int保持高级别的类型2、unsigned无符号级别高signed有符号的类型3、浮点型级别最高(double>float>unsigned>signed)二、强制转换:(类型)操作对象1、如:(float)10、(int)1.23、(double)1.45678、(short)99
*/
int main(){//强制转换,只演示float,其它都是 (类型)操作对象int a1 = 5, a2 = 2;float a3 = (float) 5 / 2; //结果为2.5000printf("---------下面为自动类型转换代码段----------\n");int* p; //整型指针变量(后面会讲到,这边先了解下即可),可根据错误信息判断运算结果是什么类型。//有符号不同类型运算,运算结果如果小于等于int,结果为int类型。若高于int类型则为高级别类型char c1 = 65;short s1 = 128;int n1 = 4567;long l1 = 7890;long long ll1 = 12345678;p = c1 + s1; //提示:'int *' from 'int' ,说明c1+s1的结果为int类型p = n1 + l1; //提示:'int *' from 'long int',结果为高级别类型long intp = l1 + ll1; //提示:'int *' from 'long long int',结果为long long int//无符号不同类型运算,跟上面的规则是一样的(其它类型不再演示)unsigned char c2 = 65;unsigned short s2 = 128;unsigned int n2 = 4567;unsigned long l2 = 7890;p = c2 + s2; //提示:'int *' from 'int',同样结果为int类型。//有符号跟无符号运算(同级别类型,无符号高于有符号)p = c1 + s2; //因c1、c2类型都低于int,因为结果还是为有符号intp = n1 + n2; //提示:'int *' from 'unsigned int'。因unsigned>signed,结果为:unsigned intp = s1 + n2; //提示:'int *' from 'unsigned int'。因为n2为无符号int,它又比int高。因此结果为无符号int类型.//有符号、无符号与浮点运算,结果都为浮点,因浮点级别比其它高。dobule又高于floatfloat f1 = 123.4F; //因字面浮点常量在C语言默认是double,加F或f表示float类型double d1 = 4567.8901;p = n2 + f1; //提示:'int *' from type 'float,结果为float类型p = l1 + d1; //提示:'int *' from type 'double',结果为double类型p = 1.234; //提示:'int *' from type 'double',说明字面浮点常量默认为double类型return 0;
}

C语言:强制类型转换、自动类型转换相关推荐

  1. 基本数据类型转换 || 自动类型转换与强制类型转换

    基本数据类型转换 自动类型转换 强制类型转换

  2. java类型转换答案,在java中支持两种类型的类型转换,自动类型转换和强制类型转换。父类转化为子类需要强制转换。...

    在java中支持两种类型的类型转换,自动类型转换和强制类型转换.父类转化为子类需要强制转换. 更多相关问题 计算机病毒通过()传染扩散得极快,危害最大. 当一个现象的数量由小变大,另一个现象的数量相反 ...

  3. 【C++基础语法 2】——类型转换[自动类型转换/强制类型转换]

    2. 类型转换 2.1 C++转换方式 自动类型转换(隐式转换):遵循一定的规则,由编译系统自动完成 强制类型转换:把表达式的运算结果强制转换成所需的数据类型 C++自动执行很多类型的转换: 将一种算 ...

  4. Java数据类型转换:强制类型转换+自动类型转换

    数据类型的转换是在所赋值的数值类型和被变量接收的数据类型不一致时发生的,它需要从一种数据类型转换成另一种数据类型.数据类型的转换可以分为隐式转换(自动类型转换)和显式转换(强制类型转换)两种. Jav ...

  5. C语言数据类型转换(自动类型转换 强制类型转换)

    数据类型转换就是将数据(变量.数值.表达式的结果等)从一种类型转换为另一种类型. 自动类型转换 自动类型转换就是编译器默默地.隐式地.偷偷地进行的数据类型转换,这种转换不需要程序员干预,会自动发生. ...

  6. C语言数据类型转换(自动类型转换+强制类型转换)

    自动类型转换 自动类型转换就是编译器默默地.隐式地.偷偷地进行的数据类型转换,这种转换不需要程序员干预,会自动发生. 1)将一种类型的数据赋值给另外一种类型的变量时就会发生自动类型转换,例如 floa ...

  7. c语言强制类型转换例子简单,c语言怎么进行强制类型转换

    在c语言中,可以通过"(新类型名称) 数据或表达式"语句来进行强制类型转换.强制类型转换是程序员明确提出的.需要通过特定格式的代码来指明的一种类型转换. 本教程操作环境:windo ...

  8. java 自动类型转换_彻底理解Java中的基本数据类型转换(自动、强制、提升)

    说基本数据类型转换之前,先了解下 Java 中的 8 种基本数据类型,以及它们的占内存的容量大小和表示的范围,如下图所示. 重新温故了下原始数据类型,现在来解释下它们之间的转换关系. 自动类型转换 自 ...

  9. 【c语言】c语言的自动类型转换和强制类型转换

    前言--数据类型 在介绍数据类型转换之前,我们首先要清楚一个知识点:数据类型的级别高低. 我们所提到的数据类型,比如整数型int,浮点型float,它们在计算机中其实是以二进制–也就是0和1的方式存储 ...

  10. C语言自动类型转换和强制类型转换详解,C语言强制类型转换 - 地狱的烈火的个人页面 - OSCHINA - 中文开源技术交流社区...

    C语言中的类型转换 C语言中的类型转换有两种,自动与强制. 它们都有几种情况,如不同长度的转换:不同类型的转换:还有无符号与有符号数之间的转换.关键是两点,即长度不同时如何转换,在有无符号数参与时如何 ...

最新文章

  1. python导入xlsxwriter要安装什么吗_Python 模块:XlsxWriter 的使用
  2. python 数据库查询序列化_python-将sqlalchemy类序列化为json
  3. SpringBoot+Vue使用Get请求时提示:Error parsing HTTP request header
  4. 毕业之后......
  5. gogs可以自动化部署吗_三千、五千平方的仓库房可以用自动化立体仓库吗?
  6. iOS webview自适应实际内容高度的4种方法
  7. 模拟线性调制系统的仿真
  8. 业界分享 | Embedding技术在商业搜索与推荐场景的实践
  9. yum安装:zabbix-web-4.2.8-1.el7.noarch: [Errno 256] No more mirrors to try
  10. 【ICLR2021】伪标签还能这样用?半监督力作UPS大揭秘!
  11. vue 中使用菜鸟打印
  12. 数据治理(五):元数据管理
  13. 进销存excel_Excel仓库进销存管理系统,全函数库存,查询汇总自动生成超简单...
  14. python blp模型 估计_python实践——时间序列分析建模理论及代码实现
  15. 初识Python必看基础知识~ 续(6)九层之台,起于垒土,肝肝肝~
  16. 阿里云短信服务(解决个人无法申请问题)
  17. 【设计开发命名必备】英语单词缩写规则
  18. ThinkPHP6 excel 导出功能完整实现
  19. Spring的Tomcat服务关闭后,Quartz进程无法正常关闭,出现内存泄露
  20. 为何把2点半比作是神奇的2点半? 为什么炒股的人叫14:30分,叫神奇的2点

热门文章

  1. Github上100个经典开源Java项目 值得阅读学习
  2. 游聚平台西游释厄传一键技能修改器
  3. 李开复写给中国大学生的第一封信
  4. 通过改由Rimini Street为其SAP应用提供支持服务,FANCL重新获得对IT发展路线图的控制
  5. EDIT Control控件,对应的变量为 int类型,输入为非法字符时怎么判断
  6. 苹果手机上运行python_【后端开发】python能在苹果手机上运行吗
  7. PHP典型案例计算1-10的阶乘的和,PHP输入两个整数m和n,求最大公约数和最小公倍数这两个代码
  8. asList 引发的血案
  9. Android 根据FFD8 FFD9获取图片
  10. 文件夹取消了小米云服务器,小米云服务上线文档在线编辑器:随时保存历史版本...