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

Битовые поля - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Структуры, содержащие указатели на самих себя http://www.cyberforum.ru/cpp-beginners/thread424820.html
Как вообще возможно существование структур, содержащих указатели на самих себя? struct mystruct{ int a; char ch; mystruct* sptr; // Указатель на объекты типа mystruct }; Например, если нам нужно вычислить объем, занимаемый mystruct в памяти, получается рекурсия!
C++ Объясните пожалуйста Получилось довольно много вопросов, накопилось пока читал книгу. Отблагодарю, как смогу за любую информацию :) Вот они: Как вообще возможно существование структур, содержащих указатели на самих себя? struct mystruct{ int a; char ch; mystruct* sptr; // Указатель на объекты типа mystruct }; http://www.cyberforum.ru/cpp-beginners/thread424813.html
Графическая библиотека в Visual Studio 2008 C++
Здравствуйте, у меня такой вопрос: как подключить в Visual Studio 2008 графическую библиотеки и вообще возможно ли это?
C++ В консольном выводе выделить разными цветами элементы матрицы
Доброй ночи всем. Я делаю задачу в Visual C++ 2008 Express. У меня вот какое дело. Выводится на экран матрица M на N. Это типа поле. По ней перемещаются юниты, 3 разных юнита. Я хочу пройденные пути закрашивать цветами. Например там, где был 1-й юнит красным, там где 2-й черным и там где 3-й белым. Имею в виду именно элементы массива чтобы цветные были. Подскажите , пожалуйста, где...
C++ Удаление данных из файла http://www.cyberforum.ru/cpp-beginners/thread424795.html
Внезапно понял что не знаю как удалить данные из файла. int main() { fstream file("file.txt",fstream::write,fstream::read); if(!file) exit(1); int temp=0; string buf="с++" ...
C++ Не получается доделать программу! Необходимо вывести результат рассчётов в последнюю строку и последний столбец матрицы. Само задание : Вывести исходные данные в первые 24 строки и первые 7 столбцов. Вычислить среднее арифметическое значение каждой строки и записать его в 8-ой столбец, а так же среднее арифметическое каждого столбца и записать в 25 строку. Отпечатать полученную матрицу в общепринятом виде. Имя матрицы и размеры : S(25,8) Программа реализованна, за исключением вывода результата в необходимую... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
17469 / 5707 / 362
Регистрация: 30.03.2009
Сообщений: 15,669
Записей в блоге: 26
09.01.2012, 17:01     Битовые поля
Цитата Сообщение от Tamoren Посмотреть сообщение
Получается, что выводимый функцией тип структуры "случайно" совпал с типом, приведенным в книге?
Он не случайно совпал, а потому, что размер структуры равен одному байту. Можно написать функцию, которая возвращает char или unsigned char. Можно написать функцию, которая возвращает структуру размером 1 байт. Все эти функции будут возвращать разные типы значений. Но у всех размер будет равен 1 байту. Поэтому сказать, что "функция возвращает байт" - это почти не сказать ничего

Цитата Сообщение от Tamoren Посмотреть сообщение
Похоже, как и биты, так и байты идут справа налево
Биты в принципе не могут идти слева направо или справа налево. Потому что биты - НЕ адресуемые единицы. Я не знаю, что написано на википедии, я никогда не считал её источником, в котором нужно черпать истину. Как битовые поля разложены в памяти в случае little-endian - смотри тут в случае big-endian - тут на картинке 3-10 (да и вообще можно весь раздел почитать). Разложение полей структуры - это не свойство языка, а свойство программных соглашений (ABI) на каждую конкретную архитектуру. Но по факту почти на всех современных процессорах используются одни и те же соглашения по распределению структур с точностью до выравнивания типов языка и распределения битовых полей для разных endian'ов.

Цитата Сообщение от Tamoren Посмотреть сообщение
И все-таки существует ли способ объявить битовое поле с помощью перечисления?
Я тебе уже говорил: пока ты внятно не сформулируешь вопрос, никто тебе на него не ответит, потому что никто не понимает, чего ты хочешь
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru