The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Языку Python исполнилось 30 лет"
Отправлено Аноним84701, 22-Фев-21 15:12 
> В Си это не номер элемента, а смещение, как в ассемблере/машинном коде,

В си это исторический синтактический сахар
> the definition of the subscript operator [] is that E1[E2] is identical to (*((E1)+(E2))).

Причем, побочным эффектном позволяющий писать вот так:


    int bar[6];
    4[bar] = 10;
    char* foo[2] = {"hello","hello"};                                                    
    1[foo] = "world";        

Единственное имхо преимущество - простота реализации в компиляторах тех времен.


> поэтому отсчет от 0 это логичный выбор для системных языков

Угу-угу. Правда,  сильно смахивает на синдром водоплавающих,  ведь взять содержимое по (указатель + смещение) и взять содержимое (массив[по индексу]) -- это абстракции довольно разного уровня.
И ведь почему-то никого не смущает одинаковая, _неявная_ операция "смещение × размер элемента" для *(foo+i) и foo[i], но  вот гипотетический, неявный  (baseaddr - constval (== размер элемента) )
для абстракции уровня массив[индекс_с_1] --"Фу-у-у, несистемно! И вообще, руки прочь от любимого источника off-by-one ошибок!" 🙄

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру