298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|||||||||||
1 | |||||||||||
Std::copy / memcpy24.06.2019, 23:32. Показов 33717. Ответов 34
Метки нет (Все метки)
Щас сойду с ума
ЧЯНДТ?
0
|
24.06.2019, 23:32 | |
Ответы с готовыми решениями:
34
Не получается использовать std::copy как memcpy? Std::begin() ,std::end(),std::copy Стандартный поток и STL (std::copy to std::cout) std::copy |
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 241
|
||||||
24.06.2019, 23:40 | 2 | |||||
Сообщение было отмечено h3mbr0 как решение
Решение
1
|
h3mbr0
|
24.06.2019, 23:45
[ТС]
#3
|
Не по теме: врубился
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
24.06.2019, 23:49 | 4 |
Потому что, это ни разу не одинаковый код.
std::copy делает ret = *buf, а memcpy тупо копирует байты Надо std::copy(buf, buf + sizeof T, (uint8_t *)&ret); Причём оба варианта плохие, лучше так не делать
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
24.06.2019, 23:54 [ТС] | 5 |
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
24.06.2019, 23:56 | 6 |
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:02 [ТС] | 7 |
Может мы друг друга не понимаем? она делает ровно то, что написано в стандарте
я пропустил каст для destination и перетер 3 байта после фрейма, человек сверху это заметил, в чем проблема? И как с ответом на мой вопрос?
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
25.06.2019, 00:08 | 8 |
Ну, да не посмотрел, написал то же самое, что у него. И? Чего "ничего подобного"?
Лучше не копировать объекты побитово. Тем более разных типов
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:09 [ТС] | 9 |
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
25.06.2019, 00:18 | 10 |
Ну, я вообще не понимаю, что и зачем ты здесь пытался сделать. Так что делай, что хочешь.
0
|
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 241
|
|
25.06.2019, 00:18 | 11 |
Написать оператор каста? Ну там канеш все от того зависит что и во что тебе надо кастить
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:22 [ТС] | 12 |
0
|
6579 / 4564 / 1843
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
25.06.2019, 00:23 | 13 |
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:32 [ТС] | 14 |
https://cellperformance.beyond... asing.html
int-float не являются similar types, так что c++11/14 в этом плане ничего не меняют остается или memcpy или std::copy, последний по замерам некоторых, обычно быстрее
0
|
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 241
|
|
25.06.2019, 00:38 | 15 |
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:42 [ТС] | 16 |
0
|
163 / 70 / 39
Регистрация: 28.05.2019
Сообщений: 241
|
|
25.06.2019, 00:46 | 17 |
0
|
6105 / 3460 / 1406
Регистрация: 07.02.2019
Сообщений: 8,799
|
|
25.06.2019, 00:49 | 18 |
h3mbr0, а почему сразу не закастить к типу U?
0
|
298 / 107 / 31
Регистрация: 12.03.2012
Сообщений: 449
|
|
25.06.2019, 00:50 [ТС] | 19 |
вот поэтому
доброй ночи, спасибо за помощь с проблемой
0
|
rat0r
|
25.06.2019, 01:39
Std::copy / memcpy
#20
|
0
|
25.06.2019, 01:39 | |
Ошибка в std::copy не ясна Memcpy, buffer overflow. Может ли возникнуть ошибка в функции memcpy Std::copy как скопировать часть строки массива byte? Error C2039: copy: не является членом "std" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |