В системе индексации на основе 0 люди называют элемент в индексе 0 “первым” или “нулевым” элементом?

В Java/C++, например, сделайте Вас, небрежно говорят это 'a' первый символ "abc", или нулевое?

Люди говорят, что оба и это всегда будут неоднозначными, или являются там фактической конвенцией?


Кавычка из Википедии на статье Zeroth:

В информатике ссылки на массив также часто запускаются в 0, таким образом, программисты могли бы использовать нулевой в ситуациях, где другие могли бы использовать сначала и т.д.

Это казалось бы, поддерживают гипотезу, что это всегда будет неоднозначным.


Благодаря Alexandros Gezerlis (см. его ответ ниже) для нахождения этой кавычки, от того, Как Думать Как Программист: Учась с Python Allen B. Downey, Jeffrey Elkner и Chris Meyers, главы 7:

Первая буква "banana" не a. Если Вы не программист. По извращенным причинам программисты всегда начинают рассчитывать от нуля. Буква 0th (нуль-eth) "banana" b. 1th (одна-eth) буква a, и 2th (две-eth) буква n.

Это, кажется, предлагает, чтобы мы как программисты отклонили естественную семантику "первых", "вторых", и т.д. при контакте с системами индексации на основе 0.

Эта кавычка предполагает, что, возможно, СУЩЕСТВУЮТ официальные управления для определенных языков, таким образом, я сделал этот вопрос [language-agnostic].

8
задан Community 23 May 2017 в 00:32
поделиться

8 ответов

Это первый символ или элемент в массиве, но он имеет нулевой индекс.

25
ответ дан 3 November 2019 в 12:13
поделиться

Вероятно, субъективно, но я называю это первым элементом или нулевым элементом. Это первое, и, не считая законов робототехники Айзека Азимова, я даже не уверен, что ноль - настоящее слово: -)

По определению все, что предшествует первому, становится первым и вытесняет все остальное одним.

4
ответ дан 3 November 2019 в 12:13
поделиться

Это зависит от того, являетесь ли вы поклонником серии роботов Айзека Азимова .

1
ответ дан 3 November 2019 в 12:13
поделиться

Стандарты C и C ++ говорят «начальный элемент» и «первый элемент», что означает одно и то же. Если я не забываю быть недвусмысленным, я говорю «начальный», «нулевой» или «первый отсчет с нуля». Но обычно я говорю «первый». Эти бананы - либо юмористическое преувеличение, либо немного помешательство (я подозреваю, что первое - это просто способ объяснить 0-индексацию). Я не думаю, что знаю кого-нибудь, кто на самом деле сказал бы «первый», имея в виду «индекс 1 массива с нулевым индексом», если бы они сначала не произнесли «нулевой» в том же абзаце, чтобы прояснить, что они имеют в виду.

2
ответ дан 3 November 2019 в 12:13
поделиться

Термин «первый» не имеет ничего общего с абсолютным индексом массива, а просто его относительное положение как самого нижнего индексированного элемента. Turbo Pascal, например, допускает произвольные индексы в массивах (скажем, от 5 до 15). Элемент, расположенный в массиве [5], по-прежнему будет называться первым элементом .

9
ответ дан 3 November 2019 в 12:13
поделиться

Цитата из этой статьи в Википедии :

Хотя термин «нулевой» сам по себе не двусмысленен, он создает двусмысленность для всех последующих элементов { {1}} при отсутствии контекста, поскольку они называются "первый", "второй", и т. Д. В противоречии с обычными повседневными значениями этих слов.

Итак, я бы сказал «первый».

6
ответ дан 3 November 2019 в 12:13
поделиться

Определенно первый, никогда не слышал ноль до сегодняшнего дня!

2
ответ дан 3 November 2019 в 12:13
поделиться

Я согласен с большинством ответов здесь, в которых говорится, что первый символ имеет нулевой индекс, но только для записи, следующее взято из книги Аллена Дауни «Python для разработки программного обеспечения»:

Итак, b - это 0-я буква («ноль-eth») слова "банан", a - 1-я буква {{1 }} («One-eth»), а n - это 2-я буква («two-eth»).

Таким образом, он устраняет двусмысленность, используя:

a) число, а затем «th», или b) слово, а затем «-eth».

2
ответ дан 3 November 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: