0

在低级语言中,您必须在创建时给出数组的长度,但在高级语言中您不需要,那么它是如何工作的?计算机如何以防止内存冲突的方式创建数组,如果它与其他内存地址冲突会发生什么?

4

1 回答 1

0

c# 和 (python, javascript) 之间有很大的不同。c# 与任何其他静态语言一样创建数组,它在堆上的内存上分配块,并为您提供指针、长度和容量。对于python和js,当你分配列表时,它也有大小和上限,但你只能改变大小和上限是抽象的,还有一点需要注意的是py和js总是将值存储为变体(你可以把字符串ans int in同一个列表),女巫意味着它们也在堆上,你拥有的int列表实际上是指针列表。

于 2021-02-08T13:23:10.503 回答