LINUX.ORG.RU
Ответ на: комментарий от mannaz
подождем еще несколько ответов - и напишу правильный ответ( хотя думаю раньше кто-то его даст за меня )
lester ★★★★
() автор топика
Прочел как "Тест на зрение". Быстро сооброзил, что тест не прошел.
ansi ★★★★
()
Ответ на: комментарий от lester
> ну как бы "111"[1], а не [0], но в общем да - а в цифрах для полного ответа? :)

да, не так прочитал. в цифрах - (char)'1'-1, считайте сами. :)

mqspi
()
Ответ на: комментарий от mqspi
ну помнить, что '0' == 48 как бы обязан любой сишник :)
lester ★★★★
() автор топика
Подозреваю что здесь используется синтаксически необычный способ андексации элементов массива (хотя это упоминается в книге Страуструпа вроде бы, но я никогда не видел такого в реальности): a[index] можно записывать и как index[a]. Видимо 1["111"] вернет число символа 1 и вычтет из него 1.
smh ★★★
()
Ответ на: комментарий от jtootf
>а в тесте на знание C++ ты триграфы рисовать будешь?

Разные вещи, всё таки.
До топика можно допереть своей головой, триграфы надо просто знать =)
tzukko
()
Ответ на: комментарий от mannaz
Это низачем не нужно, это такой побочный эффект синтаксиса =). Запись pointer[index] эквивалентна записи *(pointer + index). А от перемены мест слагаемых сумма не меняется, т.е. *(pointer + index) равно *(index + pointer), что в свою очередь эквивалентно index[pointer].
Deleted
()
ахренеть. а у меня почему-то вертелось в голове что в качестве имени идентификатора(или как это называется) не могут служить символьные последовательности начинающиеся с цифры. Перечитал питона :(
true_admin ★★★★★
()
Ответ на: комментарий от lester
>да - пиши еще! :)

вот тебе задачка на знание C++ - как написать класс C таким образом, чтобы в процессе его создания нарушался механизм выделения памяти под объект (например, выделялось бы на 4 байта меньше чем sizeof C, что рано или поздно приводило бы к затиранию последних 4 байт объекта). перегружать new нельзя, должно одинаково работать и со стеком и с кучей

слабо? :)

jtootf ★★★★★
()
Ответ на: комментарий от true_admin
> ахренеть. а у меня почему-то вертелось в голове что в качестве имени идентификатора(или как это называется) не могут служить символьные последовательности начинающиеся с цифры. Перечитал питона :(

Не могут. Только какое это отношение имеет к топику?
Deleted
()
Жесть! Примем на вооружение :)

Странно, как я мог забыть про эту фишку. Точно помню, лет N назад встречался...

const86 ★★★★★
()
Ответ на: комментарий от const86
>Жесть! Примем на вооружение :)

Ну, на вооружение не нужно, но в качестве задачки отменно :) Тоже ведь знал, но зашоренность мозгов не дала сразу вспомнить.

Автору топика +пицсот :)

sleepflint ★★★
()
Ответ на: комментарий от tzukko
>Известный трюк =)

ему 26 лет недавно стукнуло - но сознание расширяет до сих пор

jtootf ★★★★★
()
Ответ на: комментарий от nikolayd
Это не извращения, это действия над указателями, и синтаксический сахар, типа: a[i] :)
sleepflint ★★★
()
Ответ на: комментарий от beastie
>рваный боян ;)

Иногда, спьяну, и про похороны тёщи забудешь :)

sleepflint ★★★
()
Ответ на: комментарий от sleepflint
>Так просто удобней обычно, но не всегда.

запись object.method тоже обычно удобней. и do-синтаксис в ту же кучу

jtootf ★★★★★
()
Ответ на: комментарий от sleepflint
Что-то мы не о том спорим, к топику не относится, предлагаю прекратить
sleepflint ★★★
()
Ответ на: комментарий от jtootf
Я? Я предпочел бы водку. Комментарий относился именно к извращениям с разыменовыванием указателя и прибавки индекса блаблаблаблаблабла.
nikolayd
()
Си не перестаёт меня удивлять )
melkor217 ★★★★★
()
Ответ на: комментарий от Deleted
по моей логике конструкция вида 1[index] означает что есть массив с именем 1. Или я слишком ограничен в своих познаниях? :).
true_admin ★★★★★
()
Ответ на: комментарий от LamerOk
да я читал это, но по синтаксису получается именно так как я говорю. А про то при перемене мест слагаемых сумма не меняется я знаю.
true_admin ★★★★★
()
Мда... и нафиг такое придумали только.
urxvt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.