Структуры. Операторы "." и "->" - Форум HACK-LAB
Главная Софт Статьи Форум Гостевуха Обратная связь
Структуры. Операторы "." и "->" - Форум HACK-LAB
Вы вошли как Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Уважаемые участники и гости форума!

В связи с переездом сайта, форум переведен в режим "только для чтения".

Все разделы перенесены на новый форум о программировании и сетевой безопасности.

На новом месте мы постараемся помочь вам в решении проблем, и ответим на интересующие вас вопросы.

Администрация.


Страница 1 из 11
Архив - только для чтения
Форум HACK-LAB » Программирование » C/C++ » Структуры. Операторы "." и "->"
Структуры. Операторы "." и "->"
RipperДата: Четверг, 2009-10-22, 7:27 AM | Сообщение # 1
Группа: Супер модератор
Сообщений: 675
Репутация: 134
Статус: Offline
Вот собсно структура
Code
struct dbRecord {
   long id;
   char name[256];
   char addr[256];
   char tel[30];
};

Вот оператор "."
Code
dbRecord blabla;
blabla.id = 123;

Но когда я юзаю указатель, то "." не катит (компиллер ругаеццо) и приходиться юзать -> (его я нагуглил и не знаю что он делает)
Code
bool dbControl::getRecord(long number, dbRecord *item) {
   if(number >= count) return 1;
   item->id = dbRecords[number].id;
   strcpy(item->name, dbRecords[number].name);
   strcpy(item->addr, dbRecords[number].addr);
   strcpy(item->tel,  dbRecords[number].tel);
   return 0;
}

Кто объяснит разницу между . и -> ?

Добавлено (2009-10-22, 7:27 Am)
---------------------------------------------
Почему нельзя всегда юзать только . или только -> ?



Сам баран!
 
ObticalДата: Понедельник, 2009-11-02, 7:59 PM | Сообщение # 2
Группа: Супер модератор
Сообщений: 1502
Репутация: 86
Статус: Offline
Ripper, акуально еще? smile
. ("операция элемента структуры") обращается к элементу через имя переменной структуры.
-> обращается через указатель структуры

а компилятор у тебя ругается потому, что приоритет у -> и . разный, скобки юзать надо
(*StructureName).element
одно и то же, что
StructureName->element


«Китайская народная мудрость: Когда ты родился - все смеялись, а ты плакал.
Так сделай так, чтобы когда ты умрешь - все плакали, а ты смеялся.»
 
RipperДата: Вторник, 2009-11-03, 11:11 AM | Сообщение # 3
Группа: Супер модератор
Сообщений: 675
Репутация: 134
Статус: Offline
Quote (Obtical)
Ripper, акуально еще? smile

ага.
Сё понял, держи +, а тема закрыта!


Сам баран!
 
Форум HACK-LAB » Программирование » C/C++ » Структуры. Операторы "." и "->"
Страница 1 из 11
Поиск:

Создать сайт бесплатно