The OpenNET Project / Index page

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



"Релиз набора компиляторов GCC 13"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для слежения за появлением новых сообщений в нити, нажмите "Проследить за развитием треда".
. "Релиз набора компиляторов GCC 13" +/
Сообщение от n00by (ok), 28-Апр-23, 12:54 
> Я бы для начала спросил: а является ли указатель числом (адресом)? И ответ: нет, не является.

ISO/IEC 9899:2017

6.2.5 Types

21 Arithmetic types and pointer types are collectively called scalar types. ...

Не вижу где стандарт формализует, что такое скаляр, но из математики известно, что это одно число.

Указатель это абстракция над адресом, описывает так же и тип адресуемого объекта (в следствии чего инкремент указателя может увеличить адрес на больше чем 1).

> (Но даже и с адресом уже кстати всё может быть не так просто.
> Например, он может быть не числом, а парой чисел.)

С адресом всё достаточно просто на физическом уровне, если иметь представление о шине адреса. Пара чисел для динамического ОЗУ (строка + столбец) окажутся просто разными разрядами одного числа. Если есть преобразование в виртуальные адреса, то на уровне приложений его не видно. Процессор может адресовать ячейку парой регистров, о чём я написал (в DOS-е вроде 20 бит был указатель, сегментный регистр + РОН).

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз набора компиляторов GCC 13, opennews, 26-Апр-23, 17:09  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



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

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