Ленин

Aug 19, 2015 11:23

(В заголовке - старинный каламбур про Ленина в ссылке.)

Короче говоря, дошёл до реализации сущностей, именуемых разными нехорошими словами - "указатели" самое безобидное из них. На сишные указатели лисповые похожи, но не совсем.

Вот, например, как мы делаем в Си, если хотим присвоить какой-то переменной какое-то значение:
int a = 2;Как это ( Read more... )

uncommon lisp

Leave a comment

Comments 15

psilogic August 19 2015, 18:55:13 UTC
в сях переменная обозначает не адрес, а имя некой области памяти и абстрактное "значение" переменной
чтобы получить адрес, надо еще применить операцию &
кроме массивов и функций где это необязательно

Reply

kincajou August 19 2015, 19:00:31 UTC
сама переменная - это уже адрес, для компилятора. А если мы хотим получить ЗНАЧЕНИЕ адреса, тогда нужна операция &.

Reply

psilogic August 19 2015, 19:08:17 UTC
для компилятора сама переменная это много чего - как минимум адрес, размер, битовое содержимое, тип, способ аллокации

(в том смысле, что компилятору крайне желательно всё это знать и учитывать)

Reply

kincajou August 19 2015, 19:11:27 UTC
ёпрст. Имя указывает на адрес "чего-то", а что это за "что-то" описано в обхявлении переменной. Си тупой, для него переменная - это в самом деле просто адрес без ничего. Поэтому и невозможно создавать переменные без типов - они всегда должны быть описаны хоть как-то

Reply


Leave a comment

Up