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

Замена аргументов функции - C++

Восстановить пароль Регистрация
 
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
20.03.2014, 07:54     Замена аргументов функции #1
Добрый день! Имеется функция:
C++
1
2
3
4
5
6
7
8
9
10
11
void funct (uint32_t* v, uint32_t* k) {
    uint32_t v0=v[0], v1=v[1], sum=0, i;          
    uint32_t delta=0x9e3779b9;                    
    uint32_t k0=k[0], k1=k[1], k2=k[2], k3=k[3];   
    for (i=0; i < 32; i++) {                     
        sum += delta;
        v0 += ((v1<<4) + k0) ^ (v1 + sum) ^ ((v1>>5) + k1);
        v1 += ((v0<<4) + k2) ^ (v0 + sum) ^ ((v0>>5) + k3);
    }                                            
    v[0]=v0; v[1]=v1;
}
На вход подаём:
v — исходный текст состоящий из двух частей по 32 бита
k — постоянная состоящая из четырёх 32-битных частей
Правильно ли изменил в тексте своей программы тело функции для непосредственного запуска?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
uint32_t key[4]={0xFDA5,0xD54E,0xFC00,0xB55A};
uint32_t delta = 0x9E3779B9;
uint32_t sum = 0xC6EF3720;  
uint32_t k0=key[0], k1=key[1], k2=key[2], k3=key[3];
 
for (int i = 0; i < 32; i++) {
            inf2 -= ((inf1<<4) + k2) ^ (inf1 + sum) ^ ((inf1>>5) + k3);
            inf1 -= ((inf2<<4) + k0) ^ (inf2 + sum) ^ ((inf2>>5) + k1);
            sum -= delta;
        }
        massiv[m]  = inf1;
        massiv[m+1] = inf2;
        m = m + 2;
massiv это массив типа uint32_t, блоки inf1 и inf2 имеют тип uint32_t.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
John Prick
754 / 687 / 123
Регистрация: 27.07.2012
Сообщений: 1,974
Завершенные тесты: 3
20.03.2014, 10:28     Замена аргументов функции #2
Ничего не понять. В чём проблема? В чём вопрос? Что такое "непосредственный запуск"?
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
20.03.2014, 14:07  [ТС]     Замена аргументов функции #3
John Prick, имеется ввиду что у меня своя функция есть и я в ней использую код другой функции
танкист34
-62 / 0 / 0
Регистрация: 15.03.2013
Сообщений: 328
21.03.2014, 21:46  [ТС]     Замена аргументов функции #4
тема актуальна
Yandex
Объявления
21.03.2014, 21:46     Замена аргументов функции
Ответ Создать тему
Опции темы

Текущее время: 05:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru