|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.11.2012, 20:36 | #1 |
Пользователь
Регистрация: 30.03.2011
Сообщений: 15
|
модификация файла на языке С в язык С++
можете помочь переделать функцию. данная функция реализована на языке С и поэтому она работает только в ос linux и ей подобных. мне нужно чтобы эта функция работала на винде через vs 2010. я пытался ее переделать, но в результате после запуска отображается лишь "Missing argument. для продолжения нажмите любую кнопку", а по идее нужно сделать так чтобы можно было ввести полный путь к файлу "d:\q.txt" чтобы его расшифровать. из данной функции нужно убрать argc and argv и заменить их так чтобы прога работала.
Пример того как должна работать прога: введите пароль: вводим пароль введите имя файла: d:\rfc796.txt файл расшифрован. #include <stdio.h> #include "rijndael.h" #define KEYBITS 256 int main(int argc, char **argv) { unsigned long rk[RKLENGTH(KEYBITS)]; unsigned char key[KEYLENGTH(KEYBITS)]; int i; int nrounds; char *password; FILE *input; if (argc < 3) { fputs("Missing argument", stderr); return 1; } password = argv[1]; for (i = 0; i < sizeof(key); i++) key[i] = *password != 0 ? *password++ : 0; input = fopen(argv[2], "rb"); if (input == NULL) { fputs("File read error", stderr); return 1; } nrounds = rijndaelSetupDecrypt(rk, key, 256); while (1) { unsigned char plaintext[16]; unsigned char ciphertext[16]; int j; if (fread(ciphertext, sizeof(ciphertext), 1, input) != 1) break; rijndaelDecrypt(rk, nrounds, ciphertext, plaintext); fwrite(plaintext, sizeof(plaintext), 1, stdout); } fclose(input); } |
28.11.2012, 21:16 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
программа будет работать ровно как в лине так и на винде, и совершенно одинакого она и там и там принимает путь к файлу через параметр при запуске.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
синтаксически программа на языке си++ состоит из?язык си++ | mitja-zakelidis | Помощь студентам | 3 | 17.03.2012 01:33 |
Алгорим решения олимпиадной задачи "Язык програмирования XY" ( в языке XY всего две операции X и Y....) | morgan97 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 17.11.2011 20:07 |
Чтение из файла(язык С) | Naper214 | Помощь студентам | 5 | 12.04.2010 00:11 |
Проблема такова: язык:Delphi7; сохранения файла; загрузка файла в String Grid | lightdevil | Общие вопросы Delphi | 3 | 06.03.2009 23:10 |