指针数组是一种标准的数组数据类型,它保存一系列指向数据类型的内存,而不是保存其他标量类型,如整数或浮点数。通过使用指针数组,程序可以拥有几乎任何数据类型、数据结构和,类甚至函数。指针数组的有效排序也是可能的,如果...
指针数组是一种标准的数组数据类型,它保存一系列指向数据类型的内存,而不是保存其他标量类型,如整数或浮点数。通过使用指针数组,程序可以拥有几乎任何数据类型、数据结构和,类甚至函数。指针数组的有效排序也是可能的,如果需要,地址可以根据它们在计算机内存中的物理位置进行排列。使用指针数组的一些复杂情况是,数据很容易被破坏,所指向的数据类型需要在内部进行管理,以防止内存溢出问题。与计算机进行倒立的女性并非全部编程语言允许一个指针数组,正如最初构想的概念一样。自动化内存管理的高级语言与低级语言使用指针的方式不同,尽管从技术上讲,高级面向对象语言中的类对象数组是指针数组;即使如此,它们也不能使用或者以同样的方式操作。在低级语言中,数组实际上会保存一个整数值,它是指针在内存堆中的直接地址。在大多数高级语言中,这个功能是不可能的,尽管存在其他范例。指针数组作为编程工具有价值的一个方面是指针可以引用任何可用的数据类型。指针本身就是一种数据类型,即使它的唯一目的是指向另一个数据类型。这意味着指针数组实际上可以在同一数组中包含多种数据类型,虽然程序需要有一种机制来跟踪每个指针引用的内容,但指针的一个强大的方面是,它们实际上可以指向内存中已编译的程序代码这允许数组指向函数,而不仅仅是数据。函数数组可以允许代码的动态数值引用。当编程语言解释器或其他类型的软件需要根据不可预测的输入调用某些函数而不需要诸如switch之类的大条件语句时,这一点非常有用块。指针数据数组所带来的一些问题是可能会丢失地址,从而使内存无法在以后释放,以及地址可能会因无意的操作(如加法)而损坏。试图访问不正确的地址可能会导致读取损坏的数据或,在初始化失败等极端情况下,可能导致程序意外终止的一种分段错误。谨慎的编程有助于减少发生这些事件的可能性
-
发表于 2020-08-06 16:29
- 阅读 ( 851 )
- 分类:电脑网络