Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2011, 10:48   #1
devnal
 
Регистрация: 13.12.2010
Сообщений: 6
По умолчанию Объясните (про struct)

Доброго времени суток.
Помогите разобраться со структурами.Что это такое и с чем их едят и ещё символ -> ,зачем он? Шарился в сети - не понятно.
devnal вне форума Ответить с цитированием
Старый 29.01.2011, 12:59   #2
pacniwassano
Пользователь
 
Регистрация: 02.12.2010
Сообщений: 81
По умолчанию

Структура содержит элементы(поля структуры) разных типов. -> оператор доступа к полям структур через указатель. Плохо шарились, советую открыть книжку и прочитать
Код:
struct Worker
{
      char fio[20];
       int date, code;
}
pacniwassano вне форума Ответить с цитированием
Старый 29.01.2011, 15:00   #3
devnal
 
Регистрация: 13.12.2010
Сообщений: 6
По умолчанию

А какую книгу лучше почитать, их ведь очень много...
devnal вне форума Ответить с цитированием
Старый 29.01.2011, 15:09   #4
pacniwassano
Пользователь
 
Регистрация: 02.12.2010
Сообщений: 81
По умолчанию

Г.Шилдт С++ руководство для начинающих
pacniwassano вне форума Ответить с цитированием
Старый 29.01.2011, 16:48   #5
hotcooler17
Пользователь
 
Регистрация: 06.01.2009
Сообщений: 34
По умолчанию

Структура - это пользовательский тип данных который складывает линейно в памяти все что в нее входит.
Проще говоря:
Код:
struct A
{
    int a,b;
    char s[20];
}mystruct;

A* pointer = &mystruct;
В памяти будет выглядеть как подряд идущие a, b и str.
Для доступа к элементам через имя переменной нужно использовать . (точку)
В данном случае это
Код:
mystruct.a=0;
Если нам не известно имя переменной, но известен адрес - операция примерно таже, но нужно разименовать указатель.
Код:
*pointer.a=0;
Но из-за лени программистов - данная конструкция имеет эквивалент в виде ->
Код:
pointer->a=0;
hotcooler17 вне форума Ответить с цитированием
Старый 29.01.2011, 18:32   #6
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

О чём речь, о C или о C++?
Если о C, то читай Кернигана и Ритчи.
Если о С++, то сначала читай Кернигана и Ритчи, а потом Шилдта.
http://obey.su/books
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Старый 30.01.2011, 00:36   #7
ACE Valery
Сама себе режиссер
Старожил
 
Аватар для ACE Valery
 
Регистрация: 27.04.2007
Сообщений: 3,365
По умолчанию

Obey-Kun
мм, и чем же отличаются структуры в Си от структур в С++?
Если я вас напрягаю или раздражаю, вы всегда можете забиться в угол и поплакать
ACE Valery вне форума Ответить с цитированием
Старый 30.01.2011, 04:59   #8
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Цитата:
мм, и чем же отличаются структуры в Си от структур в С++?
Это шутка? В C++ структура — это класс, за тем лишь отличием, что по умолчанию члены и базовые классы у структуры публичные. Другое дело, что по правилам хорошего тона, struct следует использовать для C-style структур.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su

Последний раз редактировалось Obey-Kun; 30.01.2011 в 06:28.
Obey-Kun вне форума Ответить с цитированием
Старый 30.01.2011, 11:08   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
В C++ структура — это класс
Да я тоже об этом читал. Поддерживаю. В Классическом Си структуры если не ошибаюсь методы содержать не могли.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.01.2011, 13:31   #10
NiCola999
Не
Участник клуба
 
Регистрация: 29.10.2009
Сообщений: 1,456
По умолчанию

всё верно )
NiCola999 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Struct, union HeLiO Общие вопросы C/C++ 6 29.12.2010 12:16
Struct mansp Общие вопросы C/C++ 4 05.12.2010 20:00
Вопрос по Struct cheblya Общие вопросы C/C++ 2 06.11.2009 11:42
STRUCT() alexov Общие вопросы C/C++ 1 13.01.2009 18:13
struct и файлы bondik Общие вопросы C/C++ 7 07.11.2008 08:13