Если я использую printf("asd"), то весь текст в кавычках будет выведен на экран и записан в лог файл. Вот такая команда: './a.out > file.log'.
./a.out > file.log
не выведет ничего на экран, всё будет перенаправлено в файл. но 2) сам printf об этом ничего не знает. Он выводит данные в поток стандартного вывода, куда они перенаправляются потом -- не его дело. 3) оператор >
перенаправляющий вывод -- это инструкция командной оболочке как запускать программу, к самой программе отношения не имеет.Есть ли какая другая команда вывода, которая будет текст выводить только в терминал, без записи в файл?
./a.out
, без каких-либо изменений в коде. webderiverxx все файлы .h, видимо реализация написана на .h файлах
есть лок в виде проверки препроцессора, почему неколько реализаций возникает, не совсем понятно
Значит, если будет стоять задача сравнить два списка (одинаковы ли они), то достаточно вычислить хеш двух списков? Или просто так совпало, что их хеши одинаковые?
гугля, находил предложения с LD_LIBRARY_PATH=... . Но разве флаг -L при компиляции не служит той же самой цели?
-L
говорит о том, где искать любые библиотеки во время линковки приложения. LD_LIBRARY_PATH
говорит о том, где искать динамические библиотеки во время выполнения. Информация из -L
со времени линковки нигде не сохраняется. Можно зашить в слинкованный бинарник пути к библиотекам, но это делается другими опциями (см. опцию линкера -rpath
). Во время выполнения динамические библиотеки могут быть где угодно, не обязательно там, где они были во время линковки.Как создать динамическую библиотеку, которая зависит от другой библиотеки?
readelf -d libwindow.so | grep NEEDED
то там должна быть ссылка на libSDL. Твоя проблема в том, что сама libwindow.so не найдена. В чем между ними разница и где какой предпочтительно использовать
std::for_each
-- это алгоритм из стандартной библиотеки C++, а tbb::parallel_for
-- это часть intel Threading Building Blocks. Если проект не использует TBB, то выбор очевиден. Если использует, то у tbb::parallel_for
несколько больше возможностей по управлению разбиением интервала на части и выполнением рабочих потоков. Не будет ли он на сервере создавать какие то архивы?
rsync -z
сжимает на лету.--compress, -z
With this option, rsync compresses the file data as it is
sent to the destination machine, which reduces the amount
of data being transmitted -- something that is useful over
a slow connection.
понять работу ядра Линукс
Почему не компилируется макрос?
#define НФлагИнициализации(НАЗВАНИЕ1, НАЗВАНИЕ2) \ Определение2Названия(НАЗВАНИЕ1, НАЗВАНИЕ2) ## флаг_инициализации
error: pasting ")" and "флаг_инициализации" does not give a valid preprocessing token
Определение2Названия
, а потом к результату будет приклеен флаг_инициализации
, в то время как на самом деле сначала препроцессор делает подстановку НАЗВАНИЕ1
и НАЗВАНИЕ2
и приклеивает флаг_инициализации
к скобочке, после чего рапортует тебе о том, что полученный результат выглядит не очень.## флаг_инициализации
внутрь Определение2Названия
. Моя программа запускается в bosh но не реагирует на прерывания клавиш
keyboard_loop:
mov ah, 0
int 16h
mov ah, 0Eh
int 10h
jmp puts_loop
iso образ созданный dd не запускается в VB
mkisofs --no-emul-boot -o test.iso -b test.bin .
где test.bin
-- это твой бинарник бут-сектора.а загрузочная флешка не отображается в BIOS
return x | y;
, то она не может никогда вызвать send
, а программа-сервер должна просто завершаться после расчёта НОД.recv
, но поскольку ты её не обрабатываешь, то дальше она будет пытаться выводить ответ из буфера в который не было ничего принято.не знаю, как правильно найти НОД в данном случае:
return x | y
нужно просто использовать x | y
в itoa
. Res и всё что с ним связано можно выкинуть, поскольку оно всё равно никак не используется.char *str = malloc(0);
Правильно ли я понимаю, что в str находится начало выделянно памяти на 0 байт
If the size of the space requested is zero, the behavior is implementation-
defined: either a null pointer is returned, or the behavior is as if the size were some
nonzero value, except that the returned pointer shall not be used to access an object.
а дальше идет запись символов в память, которая для нас не предназначалась?
Получается, магическим образом, самопроизвольно, между включениями VulkanTexture.h и VulkanglTFModel.h был объявлен define.
Разве препроцессор не последователен и может включать файлы в том порядке, в каком ему заблагорассудится, а не как я написал?
Helpers/VulkanTexture.h
и VulkanTexture.h
-- это один и тот же файл, или разные? Если один и тот же, то из-за #pragma once
в нём он не подключается в VulkanglTFModel.h, а если разные -- то подключается.-c
на -E
). В выводе препроцессора не видно дефайнов, но видно когда подключается тот или иной файл и видно весь исходный код не относящийся к препроцессору. что тут неправильно?
откуда появился результат после сложения?
что это за значение 88 13 00 00 ......... и Val = 5000 ?
coffeeMachine mix = device + machine;
вызывает перегрузку конструктора копирования, а не перегрузку оператор =, почему?
coffeeMachine mix; mix = device + machine;
где найти информацию о внутреннем устройстве long long int и unsigned long long int?
у меня появилось впечатление, что long long int склеен из двух long int и дает псевдо длину в 64 бита. Поправьте меня, если я не прав