返回介绍

1.1 数据类型

发布于 2025-02-24 22:44:35 字数 1008 浏览 0 评论 0 收藏 0

数据类型是每种编程语言不可或缺的一部分。ANSI-C(标准化 C)拥有一些基本数据类型: intdoublechar 。有限的数据类型几乎不能满足程序员的要求,所以编程语言会提供一种机制来使得程序员使用这些基本的预定义数据类型构造新的数据类型。一个简单的应用就是构造集合,如数组,结构体和联合体。而指针集,依照 C.A.R Hare 的话:“从这一步起,我们也许永远不会复苏”允许我们描述和操作本质上无限复杂的数据。

什么才是真正的数据类型呢?我们可以发表不同的观点。数据类型是一系列值的集合 - char (字符型) 数据类型拥有 256 个不同的值, int (整型)数据类型拥有更多不同值, 他们之间的间隔相等,表现形式多少有点像数学中的自然数或整数,而 double (浮点数据类型) 类型拥有更多的可能的值,类似数学中的带小数部分的数。

有选择性地,我们能够定义一种数据类型作为一个值的集合加上一系列操作来做一些事情。典型地,定义的这些值计算机能够表示,这样的操作过程能够翻译成机器指令。在这方面, int 型在标准 C 语言中做的并不是很好。这些数据的集合的值的范围可能随着不同机器而不同,操作方式就像算术中的右移操作,表现形式可能不尽相同。

太复杂的例子往往不能得到有效的说明。我们可以典型地把一个线性列表中的元素定义成一个结构体如下:

typedef  struct node {
  struct node *Next;
  …information…
}node ;

并且,对于这个列表的操作,我们指定列表的头,如下:

node * head (node * elt , const  node *  tail);

然而,这样的应用是非常冗余的,好的编程规则指示我们隐藏数据项的表示,仅仅声明操作方法。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文