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

Чтение файла в структуру - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Сортировка трехмерного массива http://www.cyberforum.ru/cpp-beginners/thread1224874.html
Выполнить сортировку трехмерного массива методом вставки, пызырька!
C++ В двумерном массиве заменить все четные элементы на минимальный элемент матрицы Задание: В двумерном массиве заменить все четные элементы на минимальный элемент матрицы. Зарание спасибо) http://www.cyberforum.ru/cpp-beginners/thread1224853.html
C++ Отредактировать текст по ширине
#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <locale.h> #include <windows.h> #define KEY_CTRL_Z 0x1A #define KEY_ENTER 0xD #define KEY_POINT '.'
Вычислить суму 4 чисел (верхних и нижних) в масиве C++
помогите пожалуйста написать программу которая показывает суму читерех чисел в масиве масив заполненый рандомными числа!масив 4 на 4 12 ** ** 75 24 82 1 38 32 11 85 23 81 ** ** 28 где звездочки те числа нужно сумировать и ввывисти! ребята помогите капац нужно через 2 часа на учобу а домашка не готова!
C++ Динамическая память new, delete http://www.cyberforum.ru/cpp-beginners/thread1224845.html
Всем привет! Столкнулся с понятием "выделение динамической памяти", прочел несколько статей на эту тему и возникли вопросы: 1. В чем преимущество такого выделения памяти(приведите пример пожалуйста) 2. Как создать динамический массив? Вот так: char *p; p = new char;? Таким образом я получаю динамический массив размером в 5 элементов? Я вообще понял что динамический массив сам расширяет...
C++ Не могу понять ошибку По задумке надо удалить два идущих подряд одинаковых слова. Задумка не выходит, выдаёт бурду... HELP ME!( #include "stdafx.h" #include <iostream> #include <fstream> #include <iomanip> #include <stdio.h> #include <Windows.h> #include <string> подробнее

Показать сообщение отдельно
AlexVRud
413 / 142 / 36
Регистрация: 04.07.2014
Сообщений: 413
09.07.2014, 19:39     Чтение файла в структуру
А кто тебе сказал что твоя структура занимает 5 байт?
При компиляции может (и будет) происходить выравнивание элементов структуры, например по 4-ре байта:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
struct MyStruct
{
    unsigned char c;
    unsigned int i;
};
 
int main()
{
    MyStruct m;
    std::cout << "Size = " << sizeof(MyStruct) << std::endl;
    std::cout << "ptr m  =" << &m << std::endl; 
    std::cout << "ptr m.i=" << &(m.i) << "(+" << ((int64_t)(&m.i)-(int64_t)(&m)) << ")" << std::endl;
    return 0; 
}
Т.е. в памяти будет выделятся 8-мь байт: [c][][][][i][i][i][i]
 
Текущее время: 19:19. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru