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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 64, средняя оценка - 4.64
Leshiy1
0 / 0 / 0
Регистрация: 03.04.2010
Сообщений: 153
#1

В числе 15 поменять местами младший и старший байты - C++

07.04.2010, 16:33. Просмотров 8387. Ответов 23
Метки нет (Все метки)

Здравствуйте всем
объясните пожалуйста как например в числе 15 поменять местами младший и старший байты
(Я Си изучаю только два дня)

Добавлено через 8 минут
Переменная типа int
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2010, 16:33     В числе 15 поменять местами младший и старший байты
Посмотрите здесь:
C++ Поменять местами старший и младший полубайты
C++ Поменять местами старший и младший полубайт беззнакового короткого целого
C++ Поменять местами левый и правый байты целого аргумента
C++ Поменять цифры в числе местами
В числе поменять местами цифры C++
C++ N-значное число, вывести младший и старший разряд
C++ Как поменять цифры в числе местами?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kirich iz Che
0 / 0 / 0
Регистрация: 29.03.2010
Сообщений: 25
04.07.2010, 21:56     В числе 15 поменять местами младший и старший байты #21
Цитата Сообщение от fasked Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
 
int main()
{
   unsigned int dword;
   std::cin >>  dword;
 
   dword = (dword << 24) | (dword & 0x00FFFF00) | (dword >> 24);
 
   std::cout << dword;
}
вот теперь вся
о да.. клевые несколько строчек кода)
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
05.07.2010, 00:20     В числе 15 поменять местами младший и старший байты #22
Цитата Сообщение от kirich iz Che Посмотреть сообщение
о да.. клевые несколько строчек кода)
а что ты еще хочешь?
kirich iz Che
0 / 0 / 0
Регистрация: 29.03.2010
Сообщений: 25
05.07.2010, 06:48     В числе 15 поменять местами младший и старший байты #23
Цитата Сообщение от fasked Посмотреть сообщение
а что ты еще хочешь?
все хорошо, просто неожиданно короткл
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2010, 21:03     В числе 15 поменять местами младший и старший байты
Еще ссылки по теме:
C++ Поменять местами первую и последнюю цифру в числе
C++ В трехзначном числе поменять местами первую и последнюю цифры
Поменять в четырехзначном числе вторую и третью цифру местами C++
В массиве из 10 числе поменять местами минимальный и максимальный элементы C++
Функция: в трехзначном числе поменять местами первую с последней цифрой C++

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

Или воспользуйтесь поиском по форуму:
Genius Ignat
1235 / 773 / 44
Регистрация: 16.09.2009
Сообщений: 2,014
10.07.2010, 21:03     В числе 15 поменять местами младший и старший байты #24
Еще как вариант.
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
#include <iostream>
using namespace std;
 
//Функция обменивает байты в переданном блоке данных, номера байтов задаются третим и четвертым параметрами.                                                                                  */
long swap_bytes(void *buf, unsigned long size_b, unsigned long num_b1, unsigned num_b2);
int main(){
    int n=1022221113;
    cout<<n<<endl;
    swap_bytes(&n,sizeof(int),0,sizeof(int)-1);   //меняеться последний с первым.
    cout<<n<<endl;
return 0;
}
 
long swap_bytes(void *buf, unsigned long size_b, unsigned long num_b1, unsigned num_b2){
if(size_b<=1)return -1;              
if(num_b1==num_b2)return -2;         
if(num_b1>=size_b||num_b2>=size_b)return -3; 
char *p = ( char*)buf;   
//Обмен байт с номерами.
char tmp = p[num_b1];
p[num_b1] = p[num_b2];
p[num_b2] = tmp;
//----------------------
return 0;
}
Yandex
Объявления
10.07.2010, 21:03     В числе 15 поменять местами младший и старший байты
Ответ Создать тему
Опции темы

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