• Как работает этот код?

    Кто-то что-то путает, т.к. для этого кода надо, чтобы было выделено 60 байт, скорей всего выделяется 64.
    Этот код берет байтовый массив
    |00|01|02|..|56|57|58|59|
    берет из него по 4 байта и над группой из 4х байт выполняет преобразование, ксоря в этой группе все биты с r кроме определенного. Затем сдвигается на 8 байт, берет следующие 4 байта и т.д.
    Ответ написан
    Комментировать
  • Зачем надо использовать трудные способы?

    @dmitryKovalskiy
    программист средней руки
    А вы можете гарантировать на 100% что 100% всех логических выражений таблицей преобразовываются проще чем преобразованиями? Что я не напишу выражение строк в 20, которое вычислять вы будете сутками, а преобразовывать полчаса. Вы обязаны знать оба способа и примерно себе представлять область применения обоих. В конкретном случае вы не приводите формулировку задачи. Как писал Дмитрий - в зависимости от нее вы можете быть как правы так и нет.
    Ответ написан
    Комментировать
  • Зачем надо использовать трудные способы?

    EvilsInterrupt
    @EvilsInterrupt
    System programming, Reversing Engineering, C++
    Таблицей гораздо проще это делается

    Производство != ВУЗ , не надо путать теплое с мягким.

    Когда будете на заводе\конторе\фрилансером или еще где, тогда и будете искать такие способы, которые позволяют решить задачу проще, но не в ущерб качеству. А в ВУЗ-е стоит задача научить не проще думать, а научить думать как можно шире!

    Но в целом, надо было смотреть на саму формулировку задачи. Если там нет указаний по поводу способов решения, то вольны выбирать тот способ, который Вам удобнее. А преподу имеете право задавать вопрос "А где в задаче указано про Ваш способ?". А если в задаче указано "решить преобразованиями", то надо решать именно так, как указано и не важно, что есть способ проще! Разве что дописать в качестве "P.S.:" о том что есть способ проще
    Ответ написан
    Комментировать
  • Как написать аналог функции strcpy() с выделением памяти?

    Olej
    @Olej
    инженер, программист, преподаватель
    нужно написать функцию, копирование строки, в новую строку с выделением памяти

    Это POSIX функция strdup().
    char *strdup (const char *s)
    Можете глянуть как она работает.
    Что-то такое:
    char* strdup( const char *s ) {
       char *p = malloc( strlen( s ) + 1 );
       if( p ) strcpy( p, s );
       return p;
    }
    Ответ написан
    Комментировать
  • Что по советуете подростку в программировании?

    opium
    @opium
    Просто люблю качественно работать
    если посмотреть глобально совершенно не вижу особой разницы между всеми языками, циклы условия
    ну есть местами фишечки типо ооп или там какой нибудь хитрой лябда функции , но в целом то все довольно одинаково
    Ответ написан
    Комментировать