Форум программистов, компьютерный форум, киберфорум
Криптография
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330

Разобраться с типом "чар"

12.01.2013, 03:30. Показов 1066. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Пишу лабу по шифрованию/дешифрованию в Builder C++.
Шифрую, например символ B (код 66). Получаю символ с кодом 1425. Записываю этот символ. При записи "лишние" 256-х отнимаются. На символе это не отражается, но при расшифровке я отталкиваюсь уже от символа с кодом 145, => результат расшифровки уже не тот. Не подскажете как обойти проблему?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.01.2013, 03:30
Ответы с готовыми решениями:

Разобраться с типом чар
Пишу лабу по шифрованию/дешифрованию в Builder C++. Шифрую, например символ B (код 66). Получаю символ с кодом 1425. Записываю этот...

Не могу разобраться с типом функции
Как правильно задать функцию в С#, чтобы на выходе получилась математическая функция? Поясню. static double parse_func(string func,...

не могу разобраться с типом переменных
procedure TForm1.N11Click(Sender: TObject); begin if not FileExists(form2.Label4.Caption+DateToStr(Date)+'.db') then begin ...

10
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
12.01.2013, 19:39
Если алгоритм шифрования предполагает возможность получения значений больше 255, то, очевидно, тип char не подходит для хранения, надо использовать более ёмкий, например short int или int. Больше сказать трудно из-за недостатка информации.
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
12.01.2013, 19:56  [ТС]
Алгоритм RSA. Пишу в Builder C++.
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
12.01.2013, 20:00
Тогда размер типа определяется величиной модуля (p*q). В более-менее похожих на реальные реализациях без "длинных" типов не обойтись. В лабораторной, возможно, хватит и 32-битного int, это уж вам решать.
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
12.01.2013, 21:55  [ТС]
Цитата Сообщение от grizlik78 Посмотреть сообщение
Тогда размер типа определяется величиной модуля (p*q). В более-менее похожих на реальные реализациях без "длинных" типов не обойтись. В лабораторной, возможно, хватит и 32-битного int, это уж вам решать.
Пока ещё не разобрался с реализацией для типа int. А возможно ли работать с типом char, но сохранять отдельно целую и дробную части кода символа?
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
12.01.2013, 22:36
Цитата Сообщение от Aleator Посмотреть сообщение
А возможно ли работать с типом char, но сохранять отдельно целую и дробную части кода символа?
А у символа есть дробная часть? char является целочисленным типом. Его размер, как правило, 8 бит. То есть он может хранить числа от 0 до 255 (или, учитывая знак, от -128 до 127).
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
12.01.2013, 22:41  [ТС]
Нее. Допустим i=1234. Сохраняем отдельно типами char 210 и 4. Т.е. 1234=210+4*256. Потом, при надобности читаем и соединяем...
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
12.01.2013, 22:46
Ну это не дробная часть. Можно, конечно, разбивать на отдельные байты вручную, а потом соединять, но зачем? Процессор умеет сразу 32 бита обрабатывать. Достаточно только использовать 32-битный тип. Или я чего-то не понимаю.
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
12.01.2013, 22:53  [ТС]
То есть при шифровке:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    unsigned char buffer[4096];
    int buffer3[100]={0};
    DWORD readed, written;
    while (true)    {
        ReadFile(in, buffer, 4096, &readed, NULL);
        if (readed == 0) break;
 
        for (int i=0; i<readed; i++ )
            buffer3[i] = Шифрование(buffer[i],.....);
 
        WriteFile(out, buffer3, readed*sizeof(int), &written, NULL);
 
    }
При дешифровке - наоборот?
0
Эксперт С++
 Аватар для grizlik78
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
12.01.2013, 23:00
В общем-то да, только надо учитывать, что int занимает несколько байт
C++
1
WriteFile(out, buffer3, readed*sizeof(buffer3[0]), &written, NULL);
Добавлено через 2 минуты
А, поправился уже, вижу.
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
12.01.2013, 23:03  [ТС]
Огромное спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.01.2013, 23:03
Помогаю со студенческими работами здесь

немогу разобраться со строковым типом и задачей с простыми числами.
Люди, помогите пожалуйста, немогу разобраться со строковым типом и задачей с простыми числами. На носу сессия, а учиться дальше оочень...

Люди! Помогите разобраться с записью большого объема данных в поле с типом данных text
Дело в том, что мне нужно записать в поле с типом text XML-документ. Но проблема состоит в том, что этот XML может быть оч. большого...

Нарисуйте 5 треугольников с разным типом линий и типом и цветом заливки
Нарисуйте 5 треугольников с разным типом линий и типом и цветом заливки. В целом у меня вопрос: Как сделать границы треугольников...

Почему System.Type является ссылочным типом, а не типом значений?
Разве может отличаться тип String, например от типа String? Если вы возьмёте typeof(String), то вы получите объект Type. Мне кажется более,...

В чем разница между типом функции и типом возвращаемого значения?
Читаю статью https:// code-live. ru/post/cpp-functions/ (ссылку изменил дабы не делать рекламу) Там написано - Любая функция...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru