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

Вывести двоичное число в обратном порядке - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ первый пришел, первый ушел http://www.cyberforum.ru/cpp-beginners/thread941867.html
Нужно реализовать очередь, первый пришел, первый ушел. Написал код, но чето перемудрил и не могу понять в чем проблема? #include"iostream" using namespace std; struct node { int data;
C++ аналог Sleep нужен аналог Sleep, только чтобы он не останавливал программу, а делал обычную задержку(вроде таймера) http://www.cyberforum.ru/cpp-beginners/thread941863.html
C++ Связанный список, найти ошибку
http://iguania.ru/stati-po-programmirovaniiu/svyazanniy-spisok.html Вот статья про связанный список, все доступно и понятно написано, я взял из нее первый список, который добавляет узлы в конец списка, переписал, вроде как все строчка в строчку, кроме конечно некоторых названий переменных, классов, все работает, но мне не выводит последний узел тот, у которого указатель next = NULL, при это...
Два раза C++
Почему в 204-ой и 207-ой строках, для того, чтобы достать имя, используется такой подход? : sparky.GetName().GetString() GetName() уже содержит имя. Для чего вызывать GetString()? #include "stdafx.h" #define DEBUG #define SHOW_INVARIANTS #include <iostream> #include <string.h> using namespace std;
C++ ООП часть программы http://www.cyberforum.ru/cpp-beginners/thread941846.html
Доброго времени суток. Может кто поможет разобраться с частью программы? void Input() // ввод { double Ch; // значение Ch с плавающей точкой int T1, T2; // целочисленные значения T1, T2 cin>>Ch; // ввод значения Ch div_t T; // div_t являются возвращаемым типом функции div, div - деление двух...
C++ Путаница в операторах Что же возвращает 6-ая строка? BOOL String::Invariants() const { #ifdef SHOW_INVARIANTS cout << "Invariants Tested" << endl; #endif return ( (itsLen && itsString) || (!itsLen && !itsString) ); } подробнее

Показать сообщение отдельно
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
24.08.2013, 10:53     Вывести двоичное число в обратном порядке
C++
1
2
3
4
5
6
7
8
9
10
template <typename T>
std::string DecToBin(T i_number)
  {
  std::string result;
  T b = static_cast<T>(1) << (sizeof(i_number)*8-1);
  do
    result.push_back(static_cast<bool>(i_number&b)+'0');
  while (b>>=1);
  return result;
  }
Добавлено через 19 минут
Если надо в обратном порядке, то
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
template <typename T>
std::string DecToBinReverse(T i_number)
  {
  std::string result;
  T b = 1;
  do
    result.push_back(static_cast<bool>(i_number&b)+'0');
  while (b<<=1);
  return result;
  }
 
int _tmain(int argc, _TCHAR* argv[])
  {
  std::cout<<DecToBin<unsigned long long>(INT_MAX)<<std::endl;
  std::cout<<DecToBinReverse<unsigned long long>(INT_MAX)<<std::endl;
    return 0;
  }
А вообще всегда можно стринг перевернуть =)
 
Текущее время: 03:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru