Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
5 / 5 / 0
Регистрация: 29.05.2011
Сообщений: 39
1

обработка данных

27.06.2011, 22:46. Показов 975. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
добрый вечер.. проблема вот в чем: массив объявленный в мэйне
C++
1
2
3
4
5
6
7
8
9
#include "HASH_CLASS.h"
 
int _tmain(int argc, _TCHAR* argv[]){
...
array<unsigned char> ^arr = gcnew array<unsigned char>(buf);
SHA256 sha;
hash = sha.GetHash(arr);
...
return 0;}
в HASH_CLASS.h, ресайзится:
C++
1
2
3
4
5
6
7
8
9
10
class SHA256
{
void FixArrEnding(array <unsigned char> ^arr, _int64 act_len);
public: _uint32* GetHash(array <unsigned char> ^arr, _int64 len_act_bl) {
                .....
                FixArrEnding(arr, len_act_bl);
                .....
           }
};
#include "sha256.h"
sha256.h :
C++
1
2
3
4
5
6
void SHA256::FixArrEnding(array <unsigned char> ^arr, _int64 act_len)
{
......
        System::Array::Resize(arr,(bl_count+1)*64);
......
}
внутри функции SHA256::FixArrEnding все ок.. массив ресайзится и новые ячейки заполняются. когда после ее завершения и возвращения в GetHash(HASH_CLASS.h) массив исходной длины и с исходными значениями(( в чем дело? может я его не правильно объявил?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.06.2011, 22:46
Ответы с готовыми решениями:

Обработка данных из порта
Добрый день. Данные с порта считываются каждую секунду. Эти данные надо обработать. Вопрос как это...

Обработка данных с COM порта
Здравстыуйте помогите решить проблемму, есть устройство COM (CH340) с него снимаются данные его...

Обработка данных типа "дата-время" в текстовых файлах
&quot;Ругается&quot; на это: File::AppendAllText( fname, name+&quot; \t&quot;+lvl&quot; \t&quot;+date&quot; \t&quot;+time&quot; \n&quot;); ...

Listbox получение данных и их обработка
Здравствуйте эксперты. Не буду говорить, что я уже не первый день бьюсь с проблемой и прочитал...

2
Эксперт С++
623 / 467 / 57
Регистрация: 28.01.2011
Сообщений: 605
27.06.2011, 23:44 2
Apprentice, оба метода FixArrEnding и GetHash должны принимать массив через ссылку : array<unsigned char> ^%, иначе при выходе их функции Вы изменения не увидите. Почитайте по поводу управляемых ссылок %, ситуация должна проясниться.

C++
1
2
FixArrEnding(array <unsigned char> ^% arr, _int64 act_len);
_uint32* GetHash(array <unsigned char> ^% arr, _int64 len_act_bl)
В частности вот пример на эту тему:

C++
1
2
3
4
5
6
7
8
9
10
11
void unset(String ^ a)
    {
    a = nullptr;
    }
 
int main()
    {
    String ^ a = "some shit";
    unset(a);
    Console::WriteLine(a); // выведет some shit
    }
C++
1
2
3
4
5
6
7
8
9
10
11
void unset(String ^% a)
    {
    a = nullptr;
    }
 
int main()
    {
    String ^ a = "some shit";
    unset(a);
    Console::WriteLine(a); // ничего не выведет
    }
да, и еще: Вы в main вызываете GetHash с одним параметром, а у вас их тут вроде два, что-то мне не кажется, что это работает.
2
5 / 5 / 0
Регистрация: 29.05.2011
Сообщений: 39
28.06.2011, 12:37  [ТС] 3
там действительно два параметра, я прост лишнего на сокращал... на счет управляемых ссылок спасибо с недочетами, но заработало.
0
28.06.2011, 12:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2011, 12:37
Помогаю со студенческими работами здесь

Обработка данных Excel документа, реально ли обработать такую структуру данных?
Добрый день. Посоветуйте ход решения задачи. Необходимо написать обработку которая будет...

Обработка данных через запросы SQL внутри приложения (виртуальная база данных)
Есть данные, которые с точки зрения удобства написания кода, проще всего обрабатывать запросами...

Динамические поля и обработка данных базы данных (mdb)
У меня вопрос. Создал базу данных mdb Acceess. Там таблицы и запросы. В Delphi создал форму для...

Обработка данных типа запись (комбинированный тип данных).
Вывести ФИО и отметки по физике студентов, имеющих средний балл, больше 4,5. Помоги...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru