Неужели это правда?
Jun. 13th, 2015 03:02 pmПишет тут один кадр,
I’ve come to realize that understanding pointers in C is not a skill, it’s an aptitude. In first year computer science classes, there are always about 200 kids at the beginning of the semester, all of whom wrote complex adventure games in BASIC for their PCs when they were 4 years old. They are having a good ol’ time learning C or Pascal in college, until one day the professor introduces pointers, and suddenly, they don’t get it. They just don’t understand anything any more. [...] For some reason most people seem to be born without the part of the brain that understands pointers.
I’ve come to realize that understanding pointers in C is not a skill, it’s an aptitude. In first year computer science classes, there are always about 200 kids at the beginning of the semester, all of whom wrote complex adventure games in BASIC for their PCs when they were 4 years old. They are having a good ol’ time learning C or Pascal in college, until one day the professor introduces pointers, and suddenly, they don’t get it. They just don’t understand anything any more. [...] For some reason most people seem to be born without the part of the brain that understands pointers.
no subject
Date: 2015-06-14 12:18 am (UTC)no subject
Date: 2015-06-14 12:27 am (UTC)no subject
Date: 2015-06-13 10:21 pm (UTC)no subject
Date: 2015-06-13 10:36 pm (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2015-06-13 10:24 pm (UTC)no subject
Date: 2015-06-13 10:36 pm (UTC)(no subject)
From:no subject
Date: 2015-06-13 10:25 pm (UTC)no subject
Date: 2015-06-13 10:39 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-13 10:32 pm (UTC)Другое дело, что синтаксис С в этом смысле весьма коряв: символ "звездочка" путается с умножением, да и стрелочка из минуса и знака "больше" делу не сильно помогает. С++ еще больше запутывает дело наличием ссылок (references).
no subject
Date: 2015-06-13 10:43 pm (UTC)В цитате упоминается и Паскаль, так что дело не в синтаксисе.
(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-13 10:53 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-14 05:39 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-13 11:17 pm (UTC)Реально ж не rocket science :)
no subject
Date: 2015-06-13 11:25 pm (UTC)no subject
Date: 2015-06-13 11:31 pm (UTC)no subject
Date: 2015-06-13 11:39 pm (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-13 11:59 pm (UTC)no subject
Date: 2015-06-14 12:25 am (UTC)no subject
Date: 2015-06-14 12:17 am (UTC)Но это же сложилось исторически - взяли машинные команды манипуляции с адресами и внесли в язык.
Ну вот типа (*а).b это всегда a->b или нет?
no subject
Date: 2015-06-14 12:23 am (UTC)(no subject)
From:(no subject)
From:Для ликвидации скобок
From:Re: Для ликвидации скобок
From:(no subject)
From:Историческая х-ня вышла
From:(no subject)
From:(no subject)
From:(no subject)
From:Исторически сложилось
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:хороший дизайн указателей?
From:Re: хороший дизайн указателей?
From:что никакой принципиальной разницы с Си.
From:no subject
Date: 2015-06-14 12:33 am (UTC)no subject
Date: 2015-06-14 12:39 am (UTC)(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:(no subject)
From:no subject
Date: 2015-06-14 01:10 am (UTC)По-моему фигня полная. Конечно, не всем это одинаково легко дается - но как и все остальное.
no subject
Date: 2015-06-14 04:15 am (UTC)no subject
Date: 2015-06-14 04:31 am (UTC)no subject
Date: 2015-06-14 05:00 am (UTC)(no subject)
From:no subject
Date: 2015-06-14 04:57 am (UTC)no subject
Date: 2015-06-14 05:00 am (UTC)(no subject)
From:(no subject)
From:no subject
Date: 2015-06-15 06:24 pm (UTC)no subject
Date: 2015-06-15 06:45 pm (UTC)(no subject)
From:no subject
Date: 2015-06-16 08:22 am (UTC)но я не понимаю дофига других вещей связанных с пойнтерами
например, когда код скомпилированный в ассемблер и бегущий уже без всякого дополнительного рантайма - вылазит за пределы отведенного ему сектора памяти - как ОС бьет ему по рукам? А ведь бьет же, насколько я знаю (хотя, опять таки, все равно есть какие то способы обойти эту защиту и проблема защиты не имеет окончального решения на 100%)
или, например, как хаккер Вася который получил админский доступ к машине жертвы может написать программу, которая точно знает, где в памяти хранится содержимое эксельного файла, которое юзер запустил параллельно с Васиной программой, причем, каждый раз при запуске обеих программ - я читал, что искать данные надо всегда по какому-то фиксированному адресу, а не понимаю почему он не меняется всегда при запусках Экселя. (то есть, мне кажется что это решаемо но не через фиксированный адрес, а через сложный анализ того, как в данный момент Эксель испрользует память).
no subject
Date: 2015-06-22 10:50 pm (UTC)