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

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

Войти
Регистрация
Восстановить пароль
 
xypc
10 / 8 / 1
Регистрация: 31.05.2013
Сообщений: 65
#1

Присвоить переменной Char значение третьего байта переменно типа Int - C++

02.10.2013, 14:25. Просмотров 571. Ответов 3
Метки нет (Все метки)

всем привет, на одном собеседовании передо мной поставили следующую задачу, присвоить переменной char ch, значение третьего байта переменно int a, как реализовать не представляю, кроме конечно варианта представить a в двоичном виде и там уже внаглую взять то, что нужно.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2013, 14:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Присвоить переменной Char значение третьего байта переменно типа Int (C++):

Присвоить переменной char m значиние переменной int i.. - C++
Как присвоить переменной char m значиние переменной int i таким образом ? int main() { char m; int i = 5; m = i; # ( что бы...

Значение типа "int*" нельзя присвоить сущности типа int - C++
#include <iostream> using namespace std; int sort(int k, int p, int b, int n) { int min = 0; // для вставки задач int sum;...

Присвоить переменной типа int содержимое четырёх байт из массива - C++
Есть массив байт. Нужно выбрать из него четыре байта подряд (например, со второго по пятый) и вернуть как int.

Надо указателю на long int присвоить значение указателя на char - C++
//есть указатель unsigned char* p_to_char = somthing; //и указатель unsigned long int* p_to_int; //надо p_to_int присвоить...

Есть переменная типа char содержащая цифру; как записать это значение в переменную типа int? - C++
Пожалуйста, напомните стандартную функцию

МАССИВЫ: динамические мас.значение типа "int *" нельзя присвоить сущности типа "int" - C++
МАССИВЫ: динамические массива ОШИБКА:значение типа "int *" нельзя присвоить сущности типа "int" #include <iostream> using...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,368
02.10.2013, 14:35 #2
Лехко:
C++
1
2
int a = ......;
char ch = a >> (CHAR_BIT * 2);
Вот только они не сказали: а что делать, если sizeof(int) <= 2 ?.... Пичалька :-(
Tulosba
:)
Эксперт С++
4393 / 3236 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
02.10.2013, 15:06 #3
или так:
C++
1
2
3
4
5
6
7
8
union
{
   int i;
   char c[4];
} u;
 
u.i = 100500;
char c = u.c[2];
Добавлено через 3 минуты
Цитата Сообщение от CheshireCat Посмотреть сообщение
а что делать, если sizeof(int) <= 2 ?
Если им такой вопрос задать, то может быть и байт не пришлось бы извлекать. Не всякий помнит 16 битные процы.
CheshireCat
Эксперт С++
2892 / 1241 / 78
Регистрация: 27.05.2008
Сообщений: 3,368
02.10.2013, 15:16 #4
О-ля-ля! А 18-битный байт не хотите? А я с таким встречался. Весьма давненько, правда, и на очень своеобразной архитектуре. Вот как тут извлечь "третий байт переменной типа int", скажите на милость?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.10.2013, 15:16
Привет! Вот еще темы с ответами:

Как присвоить такое значение переменной int - C++
есть две переменные типа int int x=2; int y=3; я хочу чтобы третья переменная Z(тоже тип int) имело значение 23, то есть...

как присвоить переменной char значение слова ? - C++
Здравствуйте ребята !! Я новичок в этом сайте , и даже новый в c++ . сегодня начал c++ . я знаю PHP , и решил учить c++ . и мне очень...

Как переменной Char присвоить значение целого текста? - C++
Пример текста: &quot;Верьте аль не верьте , а жил на белом свете Федот-Стрелец Удалой молодец......&quot;

Ошибка: "Значение типа float нельзя присвоить сущности типа int" - C++
При компиляции в Visual C++ получается такая ошибка: &quot;Значение типа float нельзя присвоить сущности типа int&quot;. Восьмая строка #include...


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

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

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