gpt4 book ai didi

arrays - 复合数据类型和数据结构有什么区别?

转载 作者:行者123 更新时间:2023-12-04 22:25:04 25 4
gpt4 key购买 nike

我读到 C 中的字符数组是一种复合数据类型,因为它是一个字符序列,但是在 Java 中 String 是一个类,维基百科说一个类是数据结构,我很困惑。

最佳答案

“数据结构”是理论计算机科学的一个非常笼统的术语。任何用于组织机器可操作数据的技术都可以被认为是一种数据结构。甚至单个机器整数也是一种数据结构,因为有不止一种方式可以解释这些位。大多数情况下,尽管“数据结构”用于指应用于大量数据集合的组织:例如,二叉树、哈希表、平面数组或链表。通常当人们谈论数据结构时,他们是用通用术语来做的,而不是特定于特定的编程语言。

“复合数据类型”是 C 和相关语言的艺术术语,或多或少的意思是“任何不是机器数的语言数据类型”。复合数据类型是数据结构,但并不是所有的数据结构都是复合数据类型——机器数太简单,不能成为复合数据类型,一个复杂的数据结构很可能是由几种复合数据类型构成的。

“类”是面向对象编程语言的艺术术语,指的是一种数据类型,它不仅定义了数据,还定义了操作数据的“方法”。在 C++ 中,所有类类型都是复合数据类型,但并非所有复合数据类型都是类类型(其他类型是“普通旧数据”或“POD”类型)。

“字符串”是一种数据结构的通用术语,它包含一系列以某种方式表示文本的小机器整数。几乎每种编程语言都有一些字符串的概念,但没有两种是相同的。根据定义,字符串是数据结构。在 C 系列中,字符串总是复合数据类型,因为单个机器整数不足以容纳多个字符。在面向对象的编程语言中,字符串通常(但不总是)是类类型。

我希望这至少能让你陷入更复杂的困惑。

关于arrays - 复合数据类型和数据结构有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4630219/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com