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

Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? - C++

Восстановить пароль Регистрация
 
newbie666
Заблокирован
04.04.2014, 12:25     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? #1
сабж...( std::count << std::hex << (long) 0x0a; )

выводится просто a, вместо , а надо чтоб было именно ...
куда делся setw, пишет что нет такого, в каком файле он объявлен то? Или как то по другому надо

Добавлено через 33 минуты
нет, ну можно конечно сделать так:
C++
1
2
3
4
5
6
7
8
9
10
std::fstream fs(L"out.txt", std::ios::out);     
if(fs.is_open())
{
    byte superByte = 0xdc;
    if((superByte >> 4) == 0)
        fs << std::hex << '0' << (long)superByte;
    else
        fs << std::hex << (long)superByte;
    fs.close(); ;
}
но разве по элегантней способа нет?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.04.2014, 12:25     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался?
Посмотрите здесь:

C++ std::ios::hex или std::ios.hex
C++ Как правильно перевести std::wstring в std::string ?
Как искать по std::vecotr из std::pait по одному значению из пары? C++
Вывести значения std::vector<std::vector<int*> > C++
C++ Как привести std::wstring к std::string?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
04.04.2014, 13:17     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? #2
Цитата Сообщение от newbie666 Посмотреть сообщение
но разве по элегантней способа нет?
Есть
C++
1
2
3
4
5
6
7
8
#include <iostream>
 
int main()
{
    int x = 123;
    std::cout << std::hex << std::showbase << x << std::endl;
    return 0;
}
Цитата Сообщение от newbie666 Посмотреть сообщение
setw, пишет что нет такого, в каком файле он объявлен то?
C++
1
#include <iomanip>
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,334
Завершенные тесты: 1
04.04.2014, 13:20     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//---------------------------------------------------------------------------
#include <iostream>
#include <iomanip>
 
using std::cout;
using std::cin;
 
int main(int argc, char* argv[])
{
cout << std::setw(10) << std::hex << std::showbase << 0x0a;
cin.ignore();
return 0;
}
//---------------------------------------------------------------------------
Вот здесь почитать.
newbie666
Заблокирован
04.04.2014, 14:50  [ТС]     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался? #4
Цитата Сообщение от SatanaXIII Посмотреть сообщение
1
//---------------------------------------------------------------------------
#include <iostream>
#include <iomanip>
using std::cout;
using std::cin;
int main(int argc, char* argv[])
{
cout << std::setw(10) << std::hex << std::showbase << 0x0a;
cin.ignore();
return 0;
}
//----------
Это не верно. setw вообще на это не влияет, он просто ставит ширину поля, это хорошо для вывода столбиками текста в файлик. В результате этого база то показывается, а нолик стирается - в результате 0xa

Добавлено через 2 минуты
Цитата Сообщение от dimcoder Посмотреть сообщение
#include <iostream>
int main()
{
* * int x = 123;
* * std::cout << std::hex << std::showbase << x << std::endl;
* * return 0;
}
это тоже не верно. Так же, показывает НОЛЬ и ИКС - 0х, после этого простая цифра без нолика


В общем что мне надо:
C++
1
2
3
4
byte a = 0x03;
 
// std::fstream fs(L"OUT.txt", std::ios::out);
fs << ... что то там , что б файле было [B]03[/B] (заглавными :-) )
Добавлено через 27 секунд
так что мой способ, предложенный в начале - единственно верный на данным момент
Yandex
Объявления
04.04.2014, 14:50     Std::count << std::hex << (long) 0x0a; Как сделать, чтоб от HEX значения ноль при выводе не убирался?
Ответ Создать тему
Опции темы

Текущее время: 19:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru