Egor
Он и ругнётся
Денис
Замени a=0 на 0=a
Эм... Зачем? Мы же проверяем a=0?a=1:a=2?.... А не 0 = a ...
Egor
a = (результат выражения ниже) if ( 0 /*false*/ ) { a = 1 } else { if ( a = 2 /*true*/ ) { a = 3 } else { if ( a = 4 ) { a = 5 } else { a = 6} } }
🦥Alex Fails
Поехал ятакой на том i++ +.... авьобусе
🦥Alex Fails
И приехал в контору, где меня собеседоть стали
🦥Alex Fails
И первая задача - перевернуть строку😂
Anonymous
которую я делал?
Anonymous
код нужен?
Anonymous
void rvs(char *p, int length) { char *a, *b; a = p; b = &p[length - 1]; for (int i = 0;i < length / 2;i++, b--, a++) { int tmp; tmp = *a; *a = *b; *b = tmp; } cout « "\nyours reversed line here:\n" « p « "\n\n"; }
Egor
код нужен?
Точно тролль
Anonymous
ещё вот это нужно в int main(){
Anonymous
l = strlen(mas);
Anonymous
}
Anonymous
...
Anonymous
какие ещё три строки?
🦥Alex Fails
Там в итоге мы оптимизировали функцию
🦥Alex Fails
Сделали ее многопоточной
Egor
какие ещё три строки?
Ответ на реверс строки решается в три строки
🦥Alex Fails
Сделали ее многопоточной
С учетом кэш-промахов
Egor
Сделали ее многопоточной
А нефига козе баян?
Egor
С учетом кэш-промахов
А вот с этого места по подробнее
🦥Alex Fails
Денис
Там в итоге мы оптимизировали функцию
А они забрали ее к себе в проект, а на работу не приняли)))))
Egor
Про кеш промахи можно рассказать?
Stanislav
Про кеш промахи можно рассказать?
http://www.gamedev.ru/code/terms/CacheMiss
🦥Alex Fails
Там еще куча матана была, uml, с++-ругани, статистики и дискрета
🦥Alex Fails
И архитектуры, паттернов
Алдар
Задачка по плюсам - скопировать память с одного участка на другой
Алдар
то есть написать свой memcpy
Алдар
для собеса)
Алдар
void* memcpy( void* dest, const void* src, std::size_t count );
Square
то есть написать свой memcpy
Наши пенсы на Делфи писали свою версию fastcopy - постраничную
Square
Ну на практике реально быстрее было
Square
В Делфи 7 :))
Egor
http://www.gamedev.ru/code/terms/CacheMiss
Это я знаю. Мне конкретно к этой задаче интересно что было
🦥Alex Fails
Многопоточная реализация без синхронизации
🦥Alex Fails
Концепцию расскажу позже
🦥Alex Fails
Код мб тоже напишу и выложу
Egor
Код мб тоже напишу и выложу
Можно в общем без подробностей, если что.
🦥Alex Fails
Отл
Richard
народ, есть у меня метод класса, например Some::foo(uint8_t*, size_t) И я хочу вызывать этот метод как функцию, естественно относительно конкретного объекта. Как мне это привести к объекту std::function<void(uint8_t*, size_t)?
Richard
через bind для методов без аргументов вышло все влет
Richard
Some::foo() { printf("Foo"); } // Some obj; std::function<void()> fcn = std::bind(&Some::foo, &obj); fcn(); // stdout: "Foo"
Richard
Все, разобрался. Some::foo(uint8_t*, size_t); // Some obj; using std::placeholders::_1; using std::placeholders::_2; std::function<void(uint8_t*, size_t)> fcn = std::bind(&Some::foo, &obj, _1, _2);
Churchill
1)пишешь через ш
Square
http://www.partnershiponai.org/
Anonymous
чита кто нибудь Дейтела - "программирование на С"? Как отзовётесь об этой книге если сравнивать её с Kern & Ritch?
Egor
K&R классика к которой ничего добавлять не надо
Anton
K&R классика к которой ничего добавлять не надо
Все верно, но если базы нет вообще никакой, то в Cи нырять лучше с этой "Язык программирования C. Лекции и упражнения" Стивен Прата
Egor
вариант, да
Kirill
да методички любой хватает за глаза для быстрого старта жи
Anton
далеко не всем
Kirill
далеко не всем
ну ок, вполне возможно
Sokolov
Ребятки. Вот я прочитал про условие if else
Sokolov
Я могу сделать условие типа i = 0; i < 10; i++
Sokolov
Понятно всё
Sokolov
А как сделать условие чтобы я вводил строки до тех пор, пока не введу, допустим букву E
Sokolov
Ну цикл
Sokolov
То есть когда введу E, программа закроется
Nikita
псевдокод while (getinput('e')) { [do something] } exit
Nikita
ну или как то так
Nikita
короче читай дальше книжку
Anonymous
Строки нельзя так сравнивать. strcmp юзай
Anonymous
while(cin»a && a != "E"){}
Kirill
придумал, у меня есть большой загашник книг. когда здесь тема будет проходить, проскакивать, я буду кидать книгу в чатик
Andrey
куда-нибудь
Kirill
я могу выложить папочку с дропбокса на час
Kirill
https://www.dropbox.com/sh/dw94dji0bhexk4r/AACxgwGuad45ENcXIN0YW4VRa?dl=0
Kirill
через час удалю ссылку
Andrey
ща поглядим