С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

записать по-битого один short int в два char - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Запрет на добавление записи http://www.cyberforum.ru/cpp-beginners/thread914945.html
Здравствуйте, написал программу, в которой создаётся список с данными про авторов книг. Но у меня возникла проблема - не могу сделать так, чтобы можно было запретить запись авторов и книг в список,...
C++ Закончить определение методов для класса list Доброго времени суток. Изучаю книгу Страуструпа для начинающих, одно из упражнений - завершить определения для класс list, являющегося упрощённым подобием std::list. Код ниже. Помогите, пожалуйста,... http://www.cyberforum.ru/cpp-beginners/thread914932.html
vector и конструторы C++
есть, например, примерно следующий код: #include <stdio.h> #include <conio.h> #include <vector> class CC { int a; public: CC();
C++ Нарушение прав доступа при записи
Пытаюсь написать класс, который бы выполнял инициализацию шрифта в directx и печатал строку на экран. Написал рабочий вариант, где инициализация Direct3D и шрифтов происходит в одном классе,...
C++ Массивы. Переписать элемент из двух в один http://www.cyberforum.ru/cpp-beginners/thread914883.html
const int N=10; int A, B; cout << "введите первый массив" << endl; for (int i(0); i<N; i++) { cout << "первый массив"<<endl; cout << "введите " << i+1 << " элемент массива: ";
C++ загаданное число помогите закончить программу int rNum,x; srand(time(0)); rNum = 1 + rand() % (10); cout << "введите число от 0 до 10 -> "; cin >> x ; if (x == rNum) cout << "вы угадали мое число"; else... подробнее

Показать сообщение отдельно
Evg
Эксперт CАвтор FAQ
18377 / 6424 / 441
Регистрация: 30.03.2009
Сообщений: 17,827
Записей в блоге: 28
01.07.2013, 17:08
Цитата Сообщение от Praktolock Посмотреть сообщение
Я просто сказал что думаю, извини если про макрос тебе показалось подколкой, слишком тонкая шутка. А вот по поводу последнего варианта мне действительно интересно мнение эксперта - что насчёт переносимости такого варианта
Он по своей сути совпадает с вариантом из поста #2. Варианты из постов #2 и #7 работают исключительно над значениями, а потому являются переносимыми. Способ хранения значений в памяти (endian) учитывает компилятор. Варианты из постов #3 и #5 пытаются учесть способ хранения значений в памяти, но делают это не до конца, т.к. учитывают только little-endian расположение, а потому являются НЕпереносимыми

Варианты #3 и #5 можно допилить до переносимого варианта. Нужно под соответствующими макросам учесть правильный endian и написать два варианта кода. С учётом того, что нет какого-то стандартного способа в определении макросов, то в таких случаях приходится вручную учитывать каждую платформу, на которой предполагается запускать программу. Пример см. в http://www.cyberforum.ru/blogs/18334/blog100.html раздел 5.2
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.