На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
Страницы: (17) « Первая ... 15 16 [17]  все  ( Перейти к последнему сообщению )  
    > Мастер-класс виртуозного программирования, откровения потомственного хакера
      prografix, кто бы из тут присутствовавших так не думал. Однако описанный идиллический сценарий маловероятен ввиду слишком высокой амбициозности ТС. Гораздо вероятнее, что он просто хотел отладить на форуме свои произведения. Ну так так бы и сказал, вряд ли всё кончилось бы так плачевно. Народ обычно не любит, когда его обманом пользуют, вот и итог.
      Одни с годами умнеют, другие становятся старше.
        Цитата OpenGL @
        Цитата Серохвостов Антон @
        В Интернете вы вряд ли решение этой задачки найдёте, потому как она весьма сложная.

        Да неужели? :D

        за него даже в гугле поискали :D
        хитрый потомственный блохер попался :D
        user posted image
          Цитата prografix @
          А могло бы быть по другому

          полностью согласен, если бы потоньше, так страниц на пятьдесят растянули бы
          Цитата usrjava @
          Технологии в основе, которых по-сути лежит javascript в расширенном так сказать виде
            :yes-sad: Вот так и кончаются души прекрасные порывы.
            Над нами - правила форума, внутри нас - нравственный закон!
            (Девиз начинающего модератора.)
              Ну ладно, неделя прошла... Посты восстановил для благодарных читателей (уж очень примечательный текст в некоторых местах и картинки красочные).

              M
              Поехали по адресу.  :-? Вы уж извините, кто мечтал тематических постов поднабрать...
              Над нами - правила форума, внутри нас - нравственный закон!
              (Девиз начинающего модератора.)
                на одном из экзаменов, не помню уж о чём конкретно шла речь.. упоминалась сортировка данных на asm`е занимавшая чуть-ли не ноль байт и при этом несколько раз модифицирующая свой код 8))

                p.s. это к слову о виртуозности :]
                Сообщение отредактировано: SVK -
                  однако спешу довести до сведения общественности, что тс тему посещает
                  Цитата usrjava @
                  Технологии в основе, которых по-сути лежит javascript в расширенном так сказать виде
                    У него нету прав тут писать :(
                    Цитата TheMachine @
                    т.е. в общем случае вы правы конечно, а мне надо спать больше а пить меньше
                      А тут тоже "после 25 постов"? Ну тогда ТС может порадовать нас не менее искромётной темой... и если это покажется полезным - то я могу избранные посты из этой туда прикрутить. :-?
                      Над нами - правила форума, внутри нас - нравственный закон!
                      (Девиз начинающего модератора.)
                        какая-то фигня с темой: под темой не вижу окошка для ввода сообщения и "быстрая цитата" не работает.

                        Добавлено
                        я сюда заглянул, чтобы вспомнить, как называется одна фигня... короч- она называется "неопределённое поведение".

                        нашёл я про это статью на хабре и у меня вопрос:

                        вот это:
                        Цитата
                        i = (i, ++i, 1) + 1; // определено


                        приводится как пример фрагмента кода, в котором нет неопределённого поведения. но что это вообще за запись такая? что там происходит-то?
                        Сообщение отредактировано: ya2500 -
                          ExpandedWrap disabled
                            i = (i, ++i, 1) + 1; // определено

                          А с чего тут быть неопределённости?
                          В скобках через запятую записаны три выражения. В соответствии с определением операции "запятая" они вычисляются строго последовательно слева направо. причём после вычисления левых от запятой выражений должны завершаться все сайд-эффекты.

                          Первое выражение "i" выдаёт начальное значение i, результат отбрасывается
                          Второе "++i" инкрементирует i и выдаёт полученное значение. Увеличенное значение i записывается на место. Результат отбрасывается.
                          Третье "i" берёт увеличенное значение i и возвращает его в качестве значения скобок.
                          Наконец это значение увеличивается на 1 и записывается обратно в i, результат - ссылка на переменную - тоже отбрасывается.

                          В результате значение i увеличилось на два.

                          Тут важным фактом является то, что ++i стоит перед запятой.

                          В выражении
                          ExpandedWrap disabled
                            i = ++i + 1;

                          неопределённость возникает из-за того, что неясно, что запишется в i последним; результат вычисления правой части, равный i + 2, или результат вычисления ++i, равный i + 1; или может компилятор решит сперва записать результат вычисления правой части, а потом произвести инкремент переменной; или компилятору ещё что-нибудь "в голову" придёт.
                          Всё написанное выше это всего лишь моё мнение, возможно ошибочное.
                            А здесь, amk?
                            ExpandedWrap disabled
                              for (char *p = str; *p != '\0'; p += *p!=' ')
                               *p = *(str += *str==' ')++;
                            Одни с годами умнеют, другие становятся старше.
                              Цитата amk @
                              Третье "i" берёт увеличенное значение i и возвращает его в качестве значения скобок.

                              какое такое третье "i"? ты случаем не единицу так обозвал?

                              Добавлено
                              ---

                              ещё момент: где-то в бильдах литературе встретил такое:

                              ExpandedWrap disabled
                                ...
                                double *pt;
                                int n;
                                cout << "введите тыры-пыры";
                                cin >> n;
                                *pt = new double[n];
                                ...


                              разве так можно? здесь же при создании массива размер задаётся не константой...
                              Сообщение отредактировано: ya2500 -
                                Цитата ya2500 @
                                разве так можно? здесь же при создании массива размер задаётся не константой...

                                Это не создание массива, а выделение памяти под n переменных типа double. То, что это может вести себя как массив - следствие того, что для указателей определён оператор [].
                                Подпись была включена в связи с окончанием срока наказания
                                  Цитата ya2500 @
                                  разве так можно?
                                  Вы правы, нельзя, - звёздочка лишняя. ;)
                                  1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                  0 пользователей:


                                  Рейтинг@Mail.ru
                                  [ Script Execution time: 0,1513 ]   [ 14 queries used ]   [ Generated: 15.11.19, 04:34 GMT ]