Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Для новичков > bitset


Автор: 0x00000000 7.1.2009, 14:25
мне надо используя  bitset   получить   битовые   представления   чисел   в   заданном
пользователем диапазоне

Код

#include <bitset.h>
#include <iostream.h>
#include <stdio.h>
#include <conio.h>

using namespace std;

int main()
{
bitset<58> b7 (15);
printf("%d",b7);
getch();
return 0;
}



я вот думал хотябы числа 15 получить битовое представление но выводит какуюто левую цыфру...

Автор: Kallikanzarid 7.1.2009, 14:40
%))))
По-твоему, что должен выводить printf?

Автор: mes 7.1.2009, 14:46
Цитата(0x00000000 @  7.1.2009,  13:25 Найти цитируемый пост)
но выводит какуюто левую цыфру... 

что попросили то и выводит.. хотя по идеи вобще краш должен быть

Цитата(0x00000000 @  7.1.2009,  13:25 Найти цитируемый пост)
printf("%d",b7);

почитайте про строку формата и что означaет %d - оно тут не применимо.

пользуйте вместо него cout:
Код

cout << b7;



P.S.
Цитата(0x00000000 @  7.1.2009,  13:25 Найти цитируемый пост)
#include <bitset.h>
#include <iostream.h>
#include <stdio.h>
#include <conio.h>

если компилятор не старый то:
Код

#include <bitset>
#include <iostream>
//#include <cstdio>
..
getchar();

Автор: 0x00000000 7.1.2009, 14:47
Kallikanzarid
я в стл ток с вектарами и списками умею работать-)  ну мне чет казалось что попадая в битсет с числом 15 произойдет чюдо))

Добавлено через 3 минуты и 7 секунд
mes,
после cout появилась ошибка указывающая на b7 пишет illegal structure operation поэтому и пробывал printf он хоть чтото выводил)
зы компилятор борланд с++  5.02 

Автор: mes 7.1.2009, 14:52
Цитата(0x00000000 @  7.1.2009,  13:47 Найти цитируемый пост)
illegal structure operation 

попробуй с исправлеными именами инклудов, как показано выше.. 

Автор: 0x00000000 7.1.2009, 14:54
mes, таже фигня только + ко всему на getchar(); материться

Автор: vinter 7.1.2009, 14:55
вообще на такое warning должен быть

Автор: mes 7.1.2009, 14:58
Цитата(0x00000000 @  7.1.2009,  13:54 Найти цитируемый пост)
таже фигня

или компилятор какой то странный или ...  smile 
вот код только что проверил -работает :
Код

#include <bitset>
#include <iostream>

using namespace std;
int main()
{
bitset<58> b7 (15);
cout<<b7;
cin.get();
return 0;
}

Автор: 0x00000000 7.1.2009, 15:05
mes, благодорю -) хоть в визуале работает) а борланд действительно уматовый компилятор))

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)