Может я что то не так делаю, кто подскажет?
O=<путь к каталогу сборки>
ко всем командам make.но почему, если мы его занулили в самом начале программы?
int i,k,w = 0;
// каким образом i учавствует в коде, если мы с ней
// ничего не делали?? если убрать это условие, код не работает
for(i=0; i<w; i++)
i++
, какое "ничего"?зачем в этом коде нужна переменная k,
Как это код работает?
ptr=strtok(s," ");
, в цикле for(i=0; i<w; i++)
проверяет, что подстрока состоит только из символов 'a'..'z', если да (т.е. i в цикле достиг длины текущей подстроки) -- печатает подстроку. Переходит к следующей подстроке тут: ptr=strtok(NULL," ");
Нужно из c++ переместить этот массив в ассемблерную вставку, а там уже перенести из этого массива в другой массив все элементы, которые равны сумме соседних.
То есть регистры e*x нельзя брать. Кто может подсказать, где найти материал по этой теме, либо же предложить пример кода для решения поставленной задачи?
#include <stdint.h>
void f(void)
{
uint32_t a[16] = {1, 2, 3, 1, 5, 4, -1, }, b[16] = {0};
void *a1, *b1;
uint32_t tmp, cnt = 14;
asm (
"lea %[a], %[a1]\n\t"
"lea %[b], %[b1]\n"
"1:\n\t"
"mov (%[a1]), %[tmp]\n\t"
"add 8(%[a1]), %[tmp]\n\t"
"cmp 4(%[a1]), %[tmp]\n\t"
"jne 2f\n\t"
"mov %[tmp], (%[b1])\n\t"
"add $4, %[b1]\n"
"2:\n\t"
"add $4, %[a1]\n\t"
"dec %[cnt]\n\t"
"jnz 1b\n\t"
: [cnt] "=&r" (cnt), [tmp] "=&r" (tmp),
[a1] "=&r" (a1), [b1] "=&r" (b1),
[b] "=m" (b)
: [a] "m" (a));
}
комментарий к коммиту 1 я считаю неправильно информативным и хочу его переименовать.
как удалить коммиты 3 и 4, чтобы они изчезли в том числе из "git log --all", у меня по сути было 3 изменения в проекте, коммиты с 3 по 5 по сути являются шагами одного изменения и хранить в истории коммиты 3 и 4 никакой надобности нет.
asm ( "mov a, %eax \n\t" "mov b, %ebx \n\t" "add %eax, %ebx \n\t" "mov %ebx, c \n\t" );
asm (
"mov %[a], %%eax \n\t"
"mov %[b], %%ebx \n\t"
"add %%eax, %%ebx \n\t"
"mov %ebx, %[c] \n\t"
: [c] "=rm" (c)
: [a] "rm" (a), [b] "rm" (b)
: "eax", "ebx", "cc"
);
Компилирую, а тут фигня происходит:
a
, но такого символа нет. Потому что переменная a
размещена на стеке и символьного имени у неё и правда нет. Если бы она (вместе с b
и c
) была глобальной, всё равно была бы ошибка (по крайней мере при компиляции под 64 бита), но другая. Попытался подключить библиотеку для конвертации xml в json
#include <xml2json.hpp>
в filefactory.cpp и xmlfile.cpp? Ну вот она на такое использование не рассчитана. Подключай её в один cpp, а прототипы функций скопируй в отдельный заголовок и подключай его во все остальные cpp где эти функции нужны. При использовании gdb не понятно в каком конкретно месте упала программа:
#0 0x00005633bd506050 in ?? ()
Как в Release конфигурации
-g
из релизной сборки. После сборки можно скопировать получившийся ELF, отрезать от него отладочные символы и запускать его. Когда что-то упадёт, можно будет загрузить core dump с ELFом, в котором отладочные символы присутствуют, чтобы не гадать, где этот адрес. g++ ругается, что не найден файл conio.h. Помимо этого, в файле process.h должно быть объявление функции _beginthread. Об этом написано на microsoft.com.
у которого crt будет слинковано статически
g++ -static
почему бы не выделить для него больше памяти?
ulimit -s
) программу?Стек работает быстрее
Это присваивание адреса первого байта массива {0, 0, 0, 0} указателю float?
что будет в i, после данных действий?
float* arr = (float []){0, 0, 0, 0};
int i = *((int*)arr);
проинтерпретирует память первого элемента массива как целое число и присвоит его значение i. По стандарту ieee754 нулевое значение типа float представляется в памяти как 4 нулевых байта, соответственно в i будет записан 0. sudo fdisk /dev/sdb >d (удаляю раздел) >w (пишу)
Все шустренько копируется за 10 минут.
И..
Ничего не грузится, вылазит (initramfs).
Never try to rescue a r/w mounted partition. The resulting copy may be useless.
It is best that the device or partition to be rescued is not mounted at all,
not even read-only.
Хэлп!
как при работе с функциями из библиотеки GMP, считывать и сохранять данные в файл (и читать из файла) например используя Массивы?