Форум программистов, компьютерный форум, киберфорум
Наши страницы

Сдвиг 128-битного числа - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ списки типов http://www.cyberforum.ru/cpp/thread65686.html
Пожалуйста помогите составить пример списков типов состоящий из трех эллементов!!!!! И если не сложно провоментируйте сам пример.
C++ Как посчитать сложный факториал? Вопрос конечно до безобразия скучный и неинтересный, хотя кто знает....Но, как мне посчитать вот эту сумму??? Проблема в том, что я не могу посчитать то что под знаком суммы, т.е вывести ... http://www.cyberforum.ru/cpp/thread65555.html
C++ Переопределить поток вывода cout
Есть некоторый кусок кода выводящий на консоль информацию с помощью cout, все бы хорошо, но при некоторых условиях, бывает нужно выводить эту инфу в файл. Хотелось бы без дублирования кода, провести...
Visual Studio 2010 C++
Кто нибудь пробовал??? Хочу узнать отзывы...
C++ Не работает С++ http://www.cyberforum.ru/cpp/thread65230.html
Дело вот в чем: хоть даже если я пишу правильные программы, с++ все равно находит там ошибки. Думаю, что я не так установил ее. Вот и ошибка: http://s54.***********/i145/0911/50/ef81f215a368.jpg На...
C++ Аналог malloc Необходимо релизовать свой malloc.Интересует меня следующее: как malloc опирирует памятью? Я понимаю как составляется список блоков памяти. Но каким образом он получает эту память из кучи? Ведь перед... подробнее

Показать сообщение отдельно
manfeese
131 / 130 / 16
Регистрация: 04.01.2009
Сообщений: 415
20.11.2009, 23:30
Вот что я смог набросать для строковых переменных:
код
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
#include <iostream.h>
#include <conio.h>
 
using namespace std;
 
enum TShiftState {Left=0,Right};
void StringShift (char *S, int StringSize, TShiftState SState, int bits)
{
 int Curr1=0,Curr2=0 ,k;
 
 if (SState)
 {
  for (int j = 0; j < bits; j++)
    for (int i = 0; i < StringSize-1; i++)
    {
      int k = (int)S[i];
      (k & 1) == 1 ? Curr1 = 0x80 : Curr1 = 0;
      k>>=1;
      k+=Curr2;
      S[i]=k;
      Curr2=Curr1;
    }
 }
 else
 {
  for (int j = 0; j < bits; j++)
    for (int i = StringSize-2; i >=0; i--)
    {
      int k = (int)S[i];
      (k & 0x80) == 0x80 ? Curr1 = 1 : Curr1 = 0;
      k<<=1;
      k+=Curr2;
      S[i]=k;
      Curr2=Curr1;
    }
 }
}
 
int main()
{
    char S[] = "012456789abcdef";       //строка любых значений
    cout<<S<<endl;
    StringShift(S,sizeof(S),Left,25);
    cout<<S;
 
    getch();
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru