LINUX.ORG.RU

История изменений

Исправление alysnix, (текущая версия) :

не все еще врубились, что исторически звездочка как разыменование встала перед именем переменной только потому, что в си израсходовали все мыслимые символы, и для разыменования вменяемого символа не осталось и что бы ни поставить после имени (типа крышечки как алголоподобных) - все равно возникла бы неоднозначность с какой либо операцией. крышечку си забрал под XOR, а знак умножения ставить после переменной нельзя - будет путаница с обычным умножением.

поставили впереди, отчего пришлось писать (*ptr).field. и чтобы не писать так муторно, ввели ->.

карочи. в обьявлении переменной или параметра * - это не часть типа, а часть декларации переменной. оттого все эти

int *a,*b,*c

но в декларации типа * это часть типа. то есть имеется некая путаница.

карочи, по правде, эти «модификаторы декларации» надо писать у имени переменной. для того чтобы тип выглядел целостно, их пишут у типа.

Исходная версия alysnix, :

не все еще врубились, что исторически звездочка как разыменование встала перед именем переменной только потому, что в си израсходовали все мыслимые символы, и для разыменования вменяемого символа не осталось и что бы ни поставить после имени (типа крышечки как алголоподобных) - все равно возникла бы неоднозначность с какой либо операцией. крышечку си забрал под XOR, а знак умножения ставить после переменной нельзя - будет путаница с обычным умножением.

поставили впереди, отчего пришлось писать (*ptr).field. и чтобы не писать так муторно, ввели ->.

карочи. в обьявлении переменной или параметра * - это не часть типа, а часть декларации переменной. оттого все эти

int *a,*b,*c

но в декларации типа * это часть имени типа. то есть имеется некая путаница.

карочи, по правде, эти «модификаторы декларации» надо писать у имени переменной. для того чтобы тип выглядел целостно, их пишут у типа.