[Powered by Google Translate] JORDAN JOZWIAK：在最简单的意义上，类型转换，是一个
改变计算机的一些数据解释
隐式或显式地改变它的数据类型。
如改变一个int浮动，反之亦然。
要了解类型转换，我们需要
从基础开始 -
数据类型本身。
在计算机语言，如C，所有的变量有某种
数据类型，它决定电脑，同样地
用户，解释变量。
如如int，long，float和数值数据类型
双，都有自己独特的特点，并
用于指定值的变化范围和精度。
类型强制转换，使我们能够采取这样一个浮点数
3.14和小数点之前的部分，3在这种情况下，
铸造为int。
让我们举个例子，一个简短的英语
审查类型，类型转换，如何改变
我们解释的一组数据。
对于数据，让我们在这里的符号。
我只是指这些精心配置的线
符号，但谁知道英语的人，
你立即认出他们，其实，字母。
你含蓄地理解数据类型。
在这串字母中，我们可以看到两个
不同的词，每个都有其自己的含义。
有名词，风，在以外的风吹。
有动词，风，在我需要
风我的模拟手表。
这是一个有趣的例子，因为我们可以看到
该类型如何，我们分配给我们的数据，无论是名词或
动词的时候，我们如何使用这些数据的变化 -
词风或风。
尽管计算机不关心语法和零部件
英语演讲，适用于同样的基本原则。
也就是说，我们可以改变的确切解释
相同的数据存储在内存中简单地将它转换为
不同的类型。
下面是一个32位的最常见的类型的大小
操作系统。
我们有一个char 1个字节中，int和float 4个字节，长
长和双8个字节。
因为int占用4个字节，它会占用32位
当它被存储在存储器中，作为一个二进位序列
0和1。
只要我们的变量仍然是一个int类型，
电脑总是转换的那些和零
二进制到原来的数量。
不过，我们可以从理论上投那些32
成一系列的布尔类型的位。
然后电脑就再也看不到了一些，但
，而不是零和一的集合。
我们也可以尝试不同的数字来读取该数据
类型，甚至作为一个四个字符的字符串。
在铸造与数字打交道时，你必须考虑如何
您的值的精度将受到影响。
请记住，精度可保持不变，
或者你可能会失去精度，但你永远无法获得精确。
让我们通过三种最常见的方式，你可以
失去精度。
铸造持股量为int类型会导致截断一切
小数点后的，所以你离开
整个号码。
如果我们把持股量x，它等于3.7，我们可以投
这个变量x为int，简单地写int的
括号内。
当我们使用这个术语在这里，我们将有效地
使用的价值，因为我们三个已经被截断
小数点后的一切。
我们也可以转换为int很长很长，这将
同样导致亏损高阶位。
很长很长占用8个字节或64位内存。
所以，当我们将它转​​换为一个int，它只有4个字节，即32
位，我们基本上是砍掉所有的位
代表更高的二进制值。
你也可以蒙上了双浮动，这将给
你最接近的可能浮动的双重不
一定四舍五入。
很长很长的int转换，损失在相似
精度是因为双包含更多的数据。
双将允许你存储53重要位，
大概16个显着的数字。
而一个浮动将只允许你存储24个
重要的位，数字大约7显著。
在这两种情况下，它可能是可以认为，
类型强制转换和调整大小的照片。
当你从大尺寸到小尺寸的，你看不到
事情清楚，因为你丢失的数据
在像素的形式。
类型转换，也会造成一些麻烦时，我们
投int型浮动。
由于漂浮在一个32位的机器只有24
显着的位，它们不能准确地表示的值
超过2 24 16777217的力量。
现在让我们来谈谈显式和隐式转换。
显式转换是当我们写在括号内的类型
前一个变量名。
作为一个例子，我们写int在括号之前，我们的
浮动变量x。
在这种方式中，我们得到的int值，
截断值3.7 -
3。
隐式转换时，编译器会自动改变
同类型的超类型，或执行一些其他类型的
铸造而无需用户写
任何额外的代码。
例如，当我们添加5和1.1，我们的价值观已经有
与他们相关联的类型。
的是一个int，而1.1是一个浮点数。
为了增加他们的计算机转换成浮动，
这将是同样的事情写在5.0
第一的位置。
但是，这就像我们说的持股量5或5.0，再加上已经
浮动，1.1，和从那里，我们其实可以添加这些
值，并获得价值6.1。
隐式转换，也让我们给变量赋值
彼此的不同类型。
我们总是可以分配一个不太精确的类型更
精确的。
例如，如果我们有一个的双重X，诠释y -
能有什么价值，我们将其设置为 -
我们可以说，x等于y。
因为双比int更精确，所以我们
不会丢失任何信息。
另一方面，它不一定是正确的说
y等于的x，因为双可能有一个较大的值比
的整数。
这样一来，的整数可能无法容纳所有的
的信息存储在一个双。
也用在隐式铸造等比较运算符
大于，小于或相等运算符。
通过这种方式，我们可以说，如果5.1大于5，我们得到的
导致真实的。
因为5是一个整数，但它会被转换为float，以
相比的浮动5.1，我们要说：5.1
大于5.0。
同样是真实的说，如果2.0等于等于2。
同时，我们还会得到真正的，因为计算机将投
整数2浮动，然后说2.0等于等于2.0，
这是真实的。
不要忘了，我们也可以整型和字符之间转换，
或ASCII值。
字符数也将减少到二进制，这就是为什么你
可以很容易地转换成字符和它们各自的
ASCII值。
要了解更多关于这一点，看看我们的视频ASCII。
当你需要时间来考虑如何存储数据的，
它开始有很大的意义。
这就像顺风和逆风之间的差异。
数据是一样的，但类型可以改变我们的
解释。
我的名字是乔丹Jozwiak，这CS50。