Публикации по теме 'c'


Уроки Redis # 3
Прежде чем погрузиться в эту технику оптимизации, если вы не читали предыдущий пост о строках, посмотрите его здесь . На этот раз я хотел поговорить о числах. В базе данных наиболее часто встречающимся типом данных является число. И в зависимости от размера числа мы хотим обрабатывать его по-другому, чтобы иметь возможность хранить его оптимизированным образом. Чтобы понять приведенный ниже алгоритм, нам нужно понимать, что скорость выполнения операции сравнения намного выше, чем..

Как создать оболочку Python для общих библиотек C / C ++
Использование модуля ctypes для вызова функций C / C ++ в Python Прочитав эту статью, вы научитесь создавать и реализовывать класс-оболочку для вызова функций C / C ++ непосредственно в Python. Мы будем использовать встроенный модуль ctypes . Согласно официальной документации ctypes - это «Внешняя библиотека функций для Python. Он предоставляет типы данных, совместимые с C, и позволяет вызывать функции в библиотеках DLL или совместно используемых библиотеках. Его можно..

Язык программирования C Керниган и Ричи
Язык программирования C от Керниган и Ричи Лучшая книга на букву С! Язык программирования C Кернигана и Ричи - лучшая книга о языке Си из всех существующих. Это небольшая книга, но, как сказано в предисловии, « C - небольшой язык, и для него не годится большая книга ». Я полностью согласен. Книги размером с небольшую башню отпугивают потенциальных читателей и могут напугать. В книге описан язык в соответствии со стандартом ANSI. Это важно само по себе. Код, написанный с..

Сборка x86 и шелл-код
Сборка x86 и шелл-код Первым делом в моем выступлении будет обзор регистров. Пока я многое узнал о машинном коде, я решил сделать шаг вперед. Я покажу классу пример, а затем снова объясню его снизу вверх. .text _start: jmp message proc: xor eax, eax mov al, 0x04 xor ebx, ebx mov bl, 0x01 pop ecx xor edx, edx mov dl, 0x16 int 0x80 xor eax, eax mov al, 0x01 xor ebx, ebx mov bl, 0x01 ; return 1 int 0x80 message: call proc msg db “ y0u sp34k 1337 ? “ section .data nasm -felf -g..

Четыре шага к компиляции программы на C
Ах. Компилятор. Таинственное устройство, которое берет исходный код и волшебным образом выдает исполняемый код. Компилятор фактически работает в четыре этапа: предварительная обработка, компиляция, сборка и компоновка. У вас есть исходный файл с именем main.c — давайте посмотрим, что произойдет, когда вы запустите gcc main.c с компилятором GNU Compiler Collection (GCC). main.c: /* * Prints: "Hello, world" */ #include <stdio.h> int main(void) {..

Как я научился программированию за десять коротких лет благодаря Питеру Норвигу
Эта статья - пятая в нашей новой серии сообщений в блоге за 2019 год, в которых темы исследуются с точки зрения наших опытных инструкторов. Подпишитесь на наш блог, чтобы читать анализ, советы по программированию и общие мысли прямо от наших инструкторов. В этом месяце Корбин Марч, ведущий инструктор Гильдии разработчиков программного обеспечения, расскажет, как вы можете научиться программированию всего за десять лет. Я поздно пришел к программированию. Я не был одним из тех..

Использование ошибок состояния гонки, DragonCTF 2019
rms-fixed в DragonCTF 2019 (размещенный на DragonSector ) представляет собой двоичный файл C, который использует потоки для параллельного выполнения HTTP-вызовов. Просто поигравшись с двоичным файлом, мы увидим, что он извлекает содержимое страниц в фоновом режиме. Нам нужно получить доступ к флагу из службы, работающей по адресу http://127.0.0.1:8000/flag Я загрузил на свой привод двоичный файл с фиксированным среднеквадратичным значением. Вы можете получить к нему доступ здесь..