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

Выдать побитовое представление используя union и битовые поля. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сколько в файле слов, состоящих не более чем из четырех букв http://www.cyberforum.ru/cpp-beginners/thread253678.html
Написать программу, которая считывает текст из файла и определяет, сколько в нем слов, состоящих не более чем из четырех букв.
C++ Расчет заданной функции F(X) над элементами массива X помогите написать эту функцию Расчет заданной функции F(X) над элементами массива X и вывод значения функции пользователю. Расчет элементов массива Y по формуле Yi=G(Xi) и вывод их пользователю в виде y = 3.543 y = 6.422 y = -14.223 ………… При выводе округлять значения Yi до 3-х знаков после запятой. F: Сумма квадратов; G: F= система -10x-5,x<15; (x-10)/6, 15<=x<50; 7/8x,x>50 http://www.cyberforum.ru/cpp-beginners/thread253670.html
C++ Ошибка в массие
Закрыто
C++ операции со стеками
Я нашел интересный код но так и не пойму как выполняется в обшем путаница! Поставил комменты,можете исправить комменты если неверно поставил и ответить на вопросы Ввод $ Videolord $ Вывод <i>Videolord</i> #include <cstdio> #include <stack>
C++ ShellExecute WinExec .... http://www.cyberforum.ru/cpp-beginners/thread253636.html
Привет всем :)) у меня появилать очень интересная проблема с WinExec и ShellExecute Вот я запукаю с помощю программы bat файл который находется в соседей папке этот bat файл должен запускать hlds.exe (CS 1.6 Server) в консольном режиме. проблема в том что всё время пишет hlds.exe не является внешней или внутренней программой... я уже пробавал и так и сяк ничего не работает
C++ Реализация через функцию. Нужна лишь реализация следующих 2-ух кодов через функцию по образцу. Образец(min,max): #include "My Library.h" TYPE Max(TYPE a, TYPE b) { return (a>b)?a:b; } TYPE Min(TYPE a, TYPE b) { return (a<b)?a:b; подробнее

Показать сообщение отдельно
ArniDexian
1 / 1 / 0
Регистрация: 28.11.2010
Сообщений: 10
08.03.2011, 14:40  [ТС]     Выдать побитовое представление используя union и битовые поля.
Спасибо всем за внимание, доделал своим способом, вот полностью рабочая программа!

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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
#include <iostream> 
using namespace std;
 
void BitStruct (unsigned long var) //С использованием битовых полей
{
    union 
    {
        unsigned long varULong;              
        struct 
        {
            unsigned a0:1;
            unsigned a1:1;
            unsigned a2:1;
            unsigned a3:1;
            unsigned a4:1;
            unsigned a5:1;
            unsigned a6:1;
            unsigned a7:1;
            unsigned a8:1;
            unsigned a9:1;
            unsigned a10:1;
            unsigned a11:1;
            unsigned a12:1;
            unsigned a13:1;
            unsigned a14:1;
            unsigned a15:1;
            unsigned a16:1;
            unsigned a17:1;
            unsigned a18:1;
            unsigned a19:1;
            unsigned a20:1;
            unsigned a21:1;
            unsigned a22:1;
            unsigned a23:1;
            unsigned a24:1;
            unsigned a25:1;
            unsigned a26:1;
            unsigned a27:1;
            unsigned a28:1;
            unsigned a29:1;
            unsigned a30:1;
            unsigned a31:1;
        } byte;
    } cod;
 
    cod.varULong = var;
    cout <<"  bity:  ";
                                                                                
    cout <<" "<<cod.byte.a31<<" "<<cod.byte.a30  <<" "<<cod.byte.a29<<" "<<cod.byte.a28<<" "<<cod.byte.a27<<" "<<cod.byte.a26<<" "<<cod.byte.a25<<" "<<cod.byte.a24
        <<" "<<cod.byte.a23<<" "<<cod.byte.a22  <<" "<<cod.byte.a21<<" "<<cod.byte.a20<<" "<<cod.byte.a19<<" "<<cod.byte.a18<<" "<<cod.byte.a17<<" "<<cod.byte.a16
        <<" "<<cod.byte.a15<<" "<<cod.byte.a14  <<" "<<cod.byte.a13<<" "<<cod.byte.a12<<" "<<cod.byte.a11<<" "<<cod.byte.a10<<" "<<cod.byte.a9<<" "<<cod.byte.a8
        <<" "<<cod.byte.a7<<" "<<cod.byte.a6  <<" "<<cod.byte.a5<<" "<<cod.byte.a4<<" "<<cod.byte.a3<<" "<<cod.byte.a2<<" "<<cod.byte.a1<<" "<<cod.byte.a0<<endl;
}
 
void Union (unsigned long var) //С использованием только union
{           
    union 
    {
        unsigned long varULong;  //varULong - переменная требуемого типа
        long bytes;
    } byte;
    byte.varULong = var;
    cout <<"  bity:  ";
        for (int i=31; i>=0; i--)                                                  
        cout<<" "<<((byte.bytes >> i) & 1);
    cout<<endl;
}
 
 
void main()                
{
    unsigned x;
    cin>>x;                  
    if (x >= 0)
    {
        BitStruct(x);           // битовое представление числа
        Union(x);
    }
}
PS: Данная функция используется для побитового представления типов float, double (т.е. для чисел с плавающей запятой).
 
Текущее время: 02:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru