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

Строка -> Битовый вектор - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Безразмерный массив http://www.cyberforum.ru/cpp-beginners/thread387191.html
Доброго времени суток! Столкнулся с такой проблемой: как можно сделать массив int не указывая его размерность...тобишь чтоб он сам мог расширяться по мере необходимости.. если быть совсем точным, то его размерность, как я понял, должна соответствовать введённому числу n.. вот код, где st,ft,wt,ta,rt имеют максимум 10..но нужно чтоб было любое, введённое число. #include "stdafx.h" #include...
C++ Функция _fasteall Как функция _fasteall, влияет на процесс компиляции? http://www.cyberforum.ru/cpp-beginners/thread387186.html
Простые числа C++
Проверить является ли введеное число простым или нет. Запрещено создавать темы с бессмысленными названиями вроде "Помогите!", "Вопрос" и т.п.
Замена и удалаения символов C++
1.Как можно удалить символы?? если может приведите пример 2. Как заменить можно символы ??? если может приведите пример
C++ Введите с клавиатуры целое число N http://www.cyberforum.ru/cpp-beginners/thread387146.html
Введите с клавиатуры целое число N, а также данные в массив целого типа. Далее перепишите данные из этого массива в другой массив той же размерности по следующему правилу: если переписываемое значение больше или равно N, то оно увеличивается в 2 раза, а если меньше - то уменьшается в 2 раза. Затем выведите данные обоих массивов на экран. Создавайте темы с осмысленными и понятными...
C++ Положительные и отрицательные элементы. Привет всем :) Вот такое задание: Перенести в начало массива четные отрицательные элементы, в конец массива – положительные нечетные элементы, сохранив для остальных элементов первоначальный порядок следования. Напечатать местонахождение (т. е. индексы начала и конца) группы “остальных” элементов. Я задаю вспомогательную функцию, где проверяет четность на нечетность, потом только задаю... подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
21.11.2011, 15:08     Строка -> Битовый вектор
Цитата Сообщение от Alukard_696 Посмотреть сообщение
Только если привести к неопределённому типу, как потом по одному выбирать октеты для шифрования?
C++
1
2
3
4
5
6
7
8
9
void *p;
void *Begin;
void *End;
Begin=(void *)&Data;
End=Begin+sizeof(Data)-1;
for (p=Begin; p<=End; ++p)
{
 //Очередной байт валяется в *p.
}
Добавлено через 9 минут
Цитата Сообщение от Alukard_696 Посмотреть сообщение
void conv_to_bits(unsigned char ch)
{
* * int i,bit;
* * INPUT_BIT[8]='\0';
* * for (i=7;i>=0;i--)
* * {
* * * * bit=ch%2;
* * * * ch=ch/2;
if (bit!=0)
* * * * * * INPUT_BIT[i]='1';
* * * * else
* * * * * * INPUT_BIT[i]='0';
* * }
}
Автор - ламер, с неупакованными битами ни кто не работает, за исключением случев массива флагов и интерфесного представления (вывод на экран и ввод с клавиатуры в двоичном формате), к тому же INPUT - это ввод, а результат. Ксорка, например, выглядит просто так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void Encode(void *Data, void *key, unsigend int DataLength, unsigend int KeyLength)
{
 void *pd;
 void *pk;
 void *ed;
 void *ek;
 ed=Data+DataLenght;
 ek=Key+KeyLenght;
 for (pd=Data; pd<=ed;++pd)
 {
  for (pk=Data; (pd<=ed)&&(pk<=e;);++pd, ++pk)
  {
   *pd^=*pk;
  }
 }
}
Добавлено через 9 минут
Если шифруется всегда текст, то можно не приводить к void*, а использовать символы вместо байтов, но если шифратор универсален, то char* нежелателен по семантике задачи, так как может сбивать с толку, наводя на мысль о текстъориентированности, так как именно для текста существуют специальные шифры подмены символов, не предназначенные, а часто абсолютно не годные для кодирования иных данных и тип char* в прототипе функций шифрования/дешифрации может вызывать иллюзию такого специализированного шифра, тогда лучше void*.
 
Текущее время: 12:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru