内容简介:对于一个程序员来讲,写代码的第一件是请,恐怕就是需要定义一些数据类型。而程序本身,就是对这些数据类型进行操作,有没有人思考过,为什么每种语言编写的程序,开始都需要定义数据类型呢?以下面的C代码为例,我们来说明这个问题:这段代码非常简单,定义了四个数据,两个类型。大家看,
对于一个 程序员 来讲,写代码的第一件是请,恐怕就是需要定义一些数据类型。而程序本身,就是对这些数据类型进行操作,有没有人思考过,为什么每种语言编写的程序,开始都需要定义数据类型呢?
以下面的C代码为例,我们来说明这个问题:
#include<stdio.h> int main() { int a=100; int b=200; double a1=10.1; double b1=10.2; a=a+b; a1=a1+b1; getchar(); return 0; }
这段代码非常简单,定义了四个数据,两个类型。大家看, a=a+b
;和 a1=a1+b1
;这两个语句,几乎一样,那么,我问你,这两个语句,在编译时,编译器会用同一段代码来替换这两个语句吗?
显然不可是同一段代码,因为浮点数和整数,在计算机里面,使用了不同的处理器,整数使用普通的CPU,而浮点数必须使用浮点运算器。所以,这两句话,产生的机器代码完全不同!
那么问题来了,编译器如何知道,在碰到两个数相加的时候,是使用浮点运算器的机器指令,还是使用普通CPU的机器指令?此时, 编译器就会检查进行加法操作的两个加数的数据类型,根据他们的数据类型,来确定到底使用哪一个运算器的机器代码
。此时,数据类型定义的意义就凸显出来了。
总结:
通过上述简单的描述,我们就能够清楚,任何编程语言(除了汇编,汇编只规定数据的字长),都会有自己的数据类型, 数据类型背后,隐藏的是编译器或者解释器对数据处理方式的定义
。知道了这个以后,我们在定义数据类型的时候,就应该知道,我们定义的这种数据类型,可以进行哪些操作,这些操作的规则是什么,这样我们才算真正掌握了这个数据类型。
更高级的语言,例如C++可以定义自己的数据类型和数据类型的算法,类的重载操作符就是一个例子。
以上所述就是小编给大家介绍的《为什么编程语言的都要定义数据类型》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- Go 语言函数式编程系列教程(十八) —— 函数篇:函数的基本定义和调用
- 逻辑式编程语言极简实现(使用C#) - 1. 逻辑式编程语言介绍
- 那些主流编程语言的知识:C 语言(一)
- 那些主流编程语言的知识:C 语言(一)
- 我的“第二”编程语言
- 编程语言特性:函数
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Ruby on Rails 3 Tutorial
Michael Hartl / Addison-Wesley Professional / 2010-12-16 / USD 39.99
“Ruby on Rails™ 3 Tutorial: Learn Rails by Example by Michael Hartl has become a must read for developers learning how to build Rails apps.” —Peter Cooper, Editor of Ruby Inside Using Rails ......一起来看看 《Ruby on Rails 3 Tutorial》 这本书的介绍吧!
HTML 压缩/解压工具
在线压缩/解压 HTML 代码
XML、JSON 在线转换
在线XML、JSON转换工具