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

Порядок хранения структур в ОЗУ и memset - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Как инициализировать массив в классе http://www.cyberforum.ru/cpp-beginners/thread1312285.html
private: static char const figury_={0,4,0,0, 0,1,0,3, 2,1,0,3, 0,2,0,2, 1,2,0,2, 1,1,0,3, 0,2,1,2, '/0','/0','/0','/0'};
C++ Редактирование и удаление из списка Код не корректно работает функция (удаления и редактирования) удаляется не тот элемент из списка который надо, а после редактирования из файла не выводится первый элемент... подправьте... http://www.cyberforum.ru/cpp-beginners/thread1312275.html
Отсортировать большое число элементов за минимальное время, используя битовый массив C++
Всем привет! Вот, получил задание такое: написать сортировку большого числа элементов за минимальное время, используя битовый массив. Работать с числами используя их двоичный код. Видимо надо...
Выделение динамической памяти размером полученным из функции C++
Функция ввода размера динамического массива int Kolvo(){ int x; printf("Введите количество элементов массива числом(от 1 до 1000):"); fflush(stdin); scanf_s("%d", &x); ...
C++ Какая-то мистика с if http://www.cyberforum.ru/cpp-beginners/thread1312215.html
Программа работает нормально, но если я убираю проверку в перегрузке оператора + условие if, то функция strcat не склеивает... #include <iostream> #include <cstring> #include <cstdlib> #include...
C++ Пройти массив по столбцам Задача звучит так: нахождение номера строки, в которой расположен минимальный элемент любого столбца двумерного массива. Другими словами, нужно в каждом столбце массива найти минимальный элемент и... подробнее

Показать сообщение отдельно
somwan
2 / 2 / 1
Регистрация: 15.04.2014
Сообщений: 8

Порядок хранения структур в ОЗУ и memset - C++

27.11.2014, 09:37. Просмотров 278. Ответов 5
Метки (Все метки)

Всем добра!

Вопрос в следующем. если объявить массив например m[100] - то он будет храниться в ОЗУ как сплошная последовательность символов и для обнуления этого массива можно использовать функцию memset(m, 0, sizeof(m)); А как именно в ОЗУ хранятся структуры? Тоже как сплошная последовательность, или как-то иначе? Цель вопроса состоит в понимании можно ли для обнуления структур использовать функцию memset();
например:
C++
1
2
3
4
5
6
7
8
9
struct STR { 
 
                          unsigned char m[100];
                          long int p1;
                          int p2;
 
} str;
 
    memset(&str, 0, sizeof(STR));
сомнение есть в том, что так можно делать. Потому что непонятно как именно хранятся данные структуры в ОЗУ.

Добавлено через 17 минут
Пожалуй стоит уточнить. Я так делаю, и при проверке вроде бы и работает, но в программе есть непонятный глюк, в участке работающего кода не так уж много, и среди него memset() - используемая как раз для обнуления структуры. Вот и возникло предположение о том что из-за неё глючит. Может кто сталкивался.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru