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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
ATAMAN200
9 / 9 / 1
Регистрация: 14.08.2010
Сообщений: 148
#1

Не происходит объединение? - C++

31.10.2010, 18:34. Просмотров 328. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "stdafx.h" 
#include <iostream>
#include "conio.h" 
using namespace std;
 
#define HIBYTE(l) ((l & 0xffff) >> 8)
#define LOBYTE(l) ((int)(l) & 0xff)
//Макросы для разделения на младший бит и старший бит
 
 
unsigned char *a2 = new unsigned char[];
unsigned char *b2 = new unsigned char[];
unsigned char *c2 = new unsigned char[];
 
unsigned __int16 a[] = {0xFA55, 0x5699, 0xD5D8, 0xAAF6, 0x8899}, 
                 b[] = {0x6456, 0x9986, 0x3336, 0x5776, 0xAF64, 0x6667};
unsigned __int16 *c = new unsigned __int16[];
 
int main()
{   
    for(int i=0, j=0, k=0; k < (sizeof(a)+sizeof(b))/sizeof(*c); k++)
    {
c[k] = (a[i] << b[j]) ? a[i++] : b[j++];
//Объединяет массивы a[] и b[] в массив *c
 
 
*a2 = HIBYTE(c[k]);
*b2 = LOBYTE(c[k]);
//Деллит данные массива *c на старший, млыдший бит и записывает их в массивы *a2 и *b2
}
 
 
for(int i=0, j=0, k=0; k < (sizeof(a2)+sizeof(b2))/sizeof(*c2); k++)
{
c2[k] = (a2[i] << b2[j]) ? a2[i++] : b2[j++];
//Объединяет массивы a2[] и b2[] в массив *c2
 
 
printf("%x\n", c2[k]);
//Результат объединения массивов a2[] и b2[] должен выводить на экран в столбик???
}
getch();
}
на экран выводит вот такое

66
fd
fd
fd
ab
ab
ab
ab

а должен выводить

fa
55
56
99
d5
d8
aa
f6
88
99
64
56
99
86
33
36
57
76
af
64
66
67
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2010, 18:34     Не происходит объединение?
Посмотрите здесь:

не происходит сортировка - C++
Добрый день.Вот программный код,программа запускается,но не работает сортировка. Подскажите ошибку пожалуйста. #include &lt;vcl.h&gt; #pragma...

Не происходит ввод - C++
Почему не происходит ввод? struct time { int hours; int mins; }; bool input(time &amp;a) { if (!cin &gt;&gt; a.hours &gt;&gt;...

Происходит ли установка студии? - C++
Я скачал вроде визуал студию и стал ее как будто бы устанавливать. Прошло так наверно минут семнадцать, может даже чуть больше. Таки...

Программа на С++ (не происходит запись) - C++
Не происходит запись: char name; string text; cout&lt;&lt;&quot;vvedite put' i im9 faila:\n&quot;; cin &gt;&gt; name; ofstream fil(name); ...

Кодирование происходит криво - C++
Нужно сгенерировать ключ, с помощью этого ключа зашифровать текст из файла, записать полученный текст в новый файл, затем провести обратное...

Что происходит в цикле for? - C++
Здравствуйте, не могу разобраться с условием работы в цикле for. Кто сведущ, объясните, пожалуйста, что это за условие такое? for...

Не происходит запись в файл - C++
Доброе время суток! Задача такая надо записать весь перебор 7ми цифр в файл.txt Вроде код правильный,но не записывает. ...

А что происходит в памяти? - C++
Привет Вот код: (написан с применение фреймворка Qt, но это не влияет на суть вопроса) //main_window.h #include &quot;Mill.h&quot; ...

Когда в С++ перегрузка не происходит? - C++
Доброго времени суток. Скажите пожалуйста, когда в С++ перегрузка не происходит?

Почему происходит переполнение? - C++
Если диапазон float: -2 147 483 648.0 / 2 147 483 647.0, то почему происходит переполнение. Или это что-то другое? P.S.: тогда что...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
accept
4820 / 3240 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
01.11.2010, 05:22     Не происходит объединение? #2
C++
1
new unsigned __int16[];
а где количество элементов ?
Yandex
Объявления
01.11.2010, 05:22     Не происходит объединение?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru