wwwhhhaaattt 发表于 2020-4-24 21:02:36

简单的问题

为什么小甲鱼的课后习题是从0开始排序的,这是他的个人习惯还是跟程序设计的什么思想有关?

heidern0612 发表于 2020-4-24 21:12:08

.

从零开始算叫基数,从1开始算叫序数,反应的是两种思想。

一般计算机思想都是从零开始算1.

老八秘制 发表于 2020-4-24 21:23:01

大多数语言都这样,列表,元组等等的索引值都是从零开始
其实是外国人的习惯

wwwhhhaaattt 发表于 2020-4-24 21:25:10

老八秘制 发表于 2020-4-24 21:23
大多数语言都这样,列表,元组等等的索引值都是从零开始
其实是外国人的习惯

谢谢回复{:5_109:}

wwwhhhaaattt 发表于 2020-4-24 21:25:42

老八秘制 发表于 2020-4-24 21:23
大多数语言都这样,列表,元组等等的索引值都是从零开始
其实是外国人的习惯

谢谢回复{:10_256:}

老八秘制 发表于 2020-4-24 21:26:46

wwwhhhaaattt 发表于 2020-4-24 21:25
谢谢回复

有用设最佳,谢谢~(下次提问记得用“新手求助”格式,编辑帖子里面应该可以改)

永恒的蓝色梦想 发表于 2020-4-24 21:27:55

老八秘制 发表于 2020-4-24 21:23
大多数语言都这样,列表,元组等等的索引值都是从零开始
其实是外国人的习惯

并不是外国人的习惯。

老八秘制 发表于 2020-4-24 21:29:27

永恒的蓝色梦想 发表于 2020-4-24 21:27
并不是外国人的习惯。

那是谁的习惯呀

永恒的蓝色梦想 发表于 2020-4-24 21:31:50

老八秘制 发表于 2020-4-24 21:29
那是谁的习惯呀

C 语言中数组其实是数组第一个元素的地址,访问下标时只要地址加下标就可以了
比如说 int arr;
其实 arr 是数组第一个元素的位置,如果要访问第一个元素的话,加0正好。

倒戈卸甲 发表于 2020-4-25 07:00:37

楼上正解。内存是实实在在的物理地址,一段数据会占据一段内存,在拿到这些数据首地址后,可以根据偏移量找到各数据。首地址就是第一个数据的地址,因此第一个数据偏移量为0。之后各个数据编号一次为1,2,3……
(首地址)+(编号)x(各个数据的长度)刚好是各个数据的物理地址,这是CPU的基本寻址逻辑

兔子BUNNY 发表于 2020-4-25 16:33:36

0是开始数字吧。毕竟很多东西都是0打头的。当然也不排除个人习惯
页: [1]
查看完整版本: 简单的问题