Форум программистов, компьютерный форум CyberForum.ru

Как работает memcpy? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Массив записей http://www.cyberforum.ru/cpp-beginners/thread86853.html
Организовать массив записей, содержащий информацию о результатах сдачи последней сессии вашими товарищами. Определить и дополнить данные средним баллом. Совсем запуталась с этой задачей( Помогите, пожалуйста.
C++ структура STUDENT 1. Описать структуру с именем STUDENT, содержащую следующие поля: ■ фамилия и инициалы; ■ номер группы; ■ успеваемость (массив из пяти элементов). 2. Написать программу, выполняющую следующие действия: ■ ввод с клавиатуры данных в массив, состоящий из десяти структур типа STUDENT; записи должны быть упорядочены по возрастанию среднего балла; ■ вывод на дисплей фамилий и номеров групп для... http://www.cyberforum.ru/cpp-beginners/thread86852.html
буфер (вывод содержимого на экран) C++
нужно вывести содержимое буфера на экран (для проверки). в сети нашла только пример записи в буфер. подскажите пожалуйста,как написать вывод? консольное приложение в vs (версии 2005) #include <vector> #include <stdio.h> int main() { std::ifstream f("example1.txt", std::ios::in | std::ios::binary);
Перевыделение массива C++
Нужно написать функцию, которая в массиве целых чисел перед каждым четным элементом добавляет 0. Т.е. если был массив 1 6 3 7 8 15 то должен получится в итоге 1 0 6 3 7 0 8 15. К сожалению код моей попытки решения этой задачи не сохранился. Но ход действий могу рассказать. В начале стандартно ввожу массив любой длины используя malloc . Потом подсчитываю сколько элементов четных в этом...
C++ Формат даты число/месяц. http://www.cyberforum.ru/cpp-beginners/thread86823.html
Привет, помогите пожалуйста решить задачку на с++ (6.0) "Дата задается в формате число/месяц. С учетом высококосных годов реализовать вычитание определенного пользователем количества дней, реализовать возможность определения количества дней между двумя датами". Очень надеюсь на вашу помощь!
C++ как заполнить массив как заполнить массив состоящий из определенного числа элементов подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1

Как работает memcpy? - C++

17.01.2010, 20:06. Просмотров 2832. Ответов 7
Метки (Все метки)

Небольшой вопрос по поводу memcpy.
Какая из функций будет работать быстрее?

C++
1
typedef unsigned int WORD32;
1 вариант
C++
1
2
3
4
5
6
7
void wcpy(WORD32 * D, WORD32 * S, int size)
{
    while(size--)
    {
        *D++ = *S++;
    }
}


2 вариант
C++
1
2
3
4
5
6
7
void _wcpy(WORD32 * D, WORD32 * S, int size)
{
    if(D != S)
    {
        memcpy(D, S, size*sizeof(WORD32));
    }
}


Я сам конечно понимаю, что скорее всего второй вариант адекватнее, но хотелось бы узнать подробности

И второй вопрос, как сделать реверс числа, тобишь из числа типа 0xABCD надо получить 0xDCBA...
Я тут набросал небольшой кусок, но он совсем отвратный..))) Хочется более красивое решение ))..

реверс
C++
1
2
3
4
5
6
7
8
9
10
WORD32 wrev(WORD32 X)
{
    return ( (X<<28) | (((X >>  4) << 28) >>  4)  | \
               (((X >>  8) << 28) >>  8)  | \
               (((X >> 12) << 28) >> 12) | \
               (((X >> 16) << 28) >> 16) | \
               (((X >> 20) << 28) >> 20) | \
               (((X >> 24) << 28) >> 24) | \
                     ((X) >> 28) ) ;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru