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

Своя реализация memcpy - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка букв английского алфавита http://www.cyberforum.ru/cpp-beginners/thread338008.html
Здравствуйте, помогите решить проблему не пойму в чём дело необходимо отсортировать слова: void SetsManipulation::sortA() { int count=0; for(int k=0;setOne!='\0';k++) { count++; } for (int i=0;i<count-1;i++) for (int j=i+1;j<count;j++)
C++ В экспресс-выпуске Visual C++ SKU не поддерживается редактирование ресурсов У меня стоит Microsoft Visual Studio 2010. Файл example.rc редактироваться не хочет, пишет "В экспресс-выпуске Visual C++ SKU не поддерживается редактирование ресурсов". Я так понял нужна не экспресс-версия. Можно ли экспресс превратить в НЕ экспресс? Если да, то что для этого нужно сделать? http://www.cyberforum.ru/cpp-beginners/thread337962.html
C++ c java на с++
аналог package и import java в c++
Список объектов класса C++
Всем добрый день. Допустим есть класс. class Test { public: void Add() { ... } } void main() {
C++ Ищу решебник! http://www.cyberforum.ru/cpp-beginners/thread337909.html
Срочно нужен решебник автор: Павловская Т.А, год издания 2008-2009 Объективно-ориентирование программирование. Запрещено давать ссылки на скачивание программ и книг с файлообменников (рапида, депозит и т.п.) и других сайтов (форумов), если есть возможность их скачать с сайтов фирм-производителей. Правила форума
C++ Условие в while подскажите пожалуйста, могу ли я таким образом задавать условие в while как ниже в коде. Мне в принцепи надо что бы выполнялось до тех пор пока указатель не будет над последним элементом матрицы, то есть pArray. bool dfs (int i1, int **pArray,int *q) { bool test=false; int n=10, m=12, ii=i1; while(!pArray) { for(int d=0; d<m; d++) { if(pArray==1) подробнее

Показать сообщение отдельно
#pragma
Временно недоступен
 Аватар для #pragma
952 / 223 / 6
Регистрация: 12.04.2009
Сообщений: 921
03.08.2011, 03:41     Своя реализация memcpy
Вот интересно а так было бы пошустрей? Там правда остаток не копируется,но можно доделать побайтно. Я вот только не уверен,как бы это отразилось на скорости,это зависит от внутреннего устройства компилятора?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#include <iostream>
/* -------------------------------------------------------------------------- */
void *memcopy(void *dest, const void *const src, size_t n);
/* -------------------------------------------------------------------------- */
void *memcopy(void *dest, const void *const src, size_t n)
{
   long  *temp1 = new long [n];
   void  *temp2 = const_cast<void *> (src);
   size_t count;
 
   if ( (count = n/sizeof(long)) ) {
 
      for (size_t i = 0; i < count; ++i) {
 
         *reinterpret_cast<long *>(temp1)  = *reinterpret_cast<long *>(temp2);
 
         temp2  = reinterpret_cast<long *>(temp2) + 1;
         ++temp1;
      }
 
      temp1 = temp1 - count;
 
      for (size_t i = 0; i < count; ++i) {
 
         *reinterpret_cast<long *>(dest) = *reinterpret_cast<long *>(temp1);
 
         dest  = reinterpret_cast<long *>(dest) + 1;
         ++temp1;
      }
 
      temp1 = temp1 - count;
      dest = reinterpret_cast<long *>(dest)-count;
   }
 
   delete [] temp1;
 
   return dest;
}
/* -------------------------------------------------------------------------- */
int main()
{
    char dest[]="1234567890qwertyuiop";
    char source[]="!@#$%^&*()ASDFGHJKL";
 
    std::cout << "\n" << static_cast<char*>(memcopy(&dest,&source,12)) << "\n";
 
    return 0;
}
/* -------------------------------------------------------------------------- */
 
Текущее время: 18:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru