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

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

Войти
Регистрация
Восстановить пароль
 
schranz
0 / 0 / 0
Регистрация: 06.02.2013
Сообщений: 46
#1

Как записать Short в два char'a? - C++

19.04.2013, 14:49. Просмотров 356. Ответов 5
Метки нет (Все метки)

Есть переменная типа short необходимо записать ее в чаровский массив... как то там через указатели как я хз((((
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.04.2013, 14:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как записать Short в два char'a? (C++):

записать по-битого один short int в два char - C++
Здрасьте, всем. Записать побитого два char в один short int это: char char1; char char2; short int s; s=char1<<8|char2; А как...

Почему такой вывод (sizeof(short + short) - 4) - C++
int _tmain(int argc, _TCHAR* argv) { short a = 3; short b = 5; cout << sizeof(a) << endl; cout << sizeof(b) << endl; ...

Undefined reference to Out32(short, short) - C++
Всем привет.подскажите в чём может быть проблема?Сode::Blocks ос Win7x32. вроде все библиотеки inpout32 прикручены к проекту...но я так...

Ввести два числа типо unsighed short,распечатать число,которое содержит в младшем байте большее значение - C++
Ввести два числа типо unsighed short,распечатать число,которое содержит в младшем байте большее значение

Как записать два массива в файл ? - C++
Здравствуйте . У меня такая задача : Есть два массива. int h4 ={2,33,4,55,78,3,11,22,33,99,0,45,66,111,123,234,456,765,44,33}; ...

Как записать 64-битное число в два 32 битных - C++
В программе с++ нужно сделать вставку на ассемблере в этой втсавке буду работать с 64 битным числом, но 64 битных регистров нет, ну или я...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
stima
463 / 312 / 26
Регистрация: 22.03.2011
Сообщений: 1,021
Завершенные тесты: 2
19.04.2013, 14:53 #2
C++
1
2
3
4
short s;
char ch[sizeof(short)];
 
memcpy(&s, ch, sizeof(short));
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
19.04.2013, 15:05 #3
Проще и безо всяких функций.
C++
1
2
3
char a[sizeof(short)];
short s;
(*((short *)(&(a[0]))))=s;
castaway
Эксперт С++
4881 / 3017 / 370
Регистрация: 10.11.2010
Сообщений: 11,078
Записей в блоге: 10
Завершенные тесты: 1
19.04.2013, 15:17 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
using namespace std;
 
union my_short {
    struct {
        unsigned char   m_low;
        unsigned char   m_high;
    };
    unsigned short      m_short;
};
 
int main()
{
    my_short    s;
 
    s.m_short = 0x10ff;
 
    cout << (unsigned int)s.m_low << endl;
    cout << (unsigned int)s.m_high << endl;
 
    return 0;
}
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
19.04.2013, 15:23 #5
Цитата Сообщение от taras atavin Посмотреть сообщение
Проще и безо всяких функций.
Да уж ... проще. С таким кол-вом скобок-то.

C++
1
2
3
short s = 12345;
char c[2];
*reinterpret_cast<short*>(c) = s;
schranz
0 / 0 / 0
Регистрация: 06.02.2013
Сообщений: 46
19.04.2013, 16:45  [ТС] #6
Спасибо большое друзья!
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.04.2013, 16:45
Привет! Вот еще темы с ответами:

Как два одномерных масива записать в один? - C++
как два одномерных масива записать в один???

Как записать два разных класса в массив? - C++
допустим есть vector&lt;class_a&gt; cont_a; vector&lt;class_b&gt; cont_b; // тут мы их заполнили допустим по 800 элементов в каждом векторе.и...

short int и short - C++
Какая разница, инициализирую я переменную как short int или же как short ? Вроде и тот, и тот тип данных компилятор понимает :)

Записать два элемента одного массива, как один элемент другого - C++
Здравствуйте) есть такое задание: нужно составить таблицу истинности(дискретная математика). И в процессе выполнения нужно записать...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
19.04.2013, 16:45
Ответ Создать тему
Опции темы

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