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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.10.2009, 22:05   #1
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию Подскажите как исправить

Доброго времени суток! Обьясните пожалуста, что значит эта ошибка и как ее исправить. Среда C++ Builder 6.
Код:
void __fastcall TForm1::Table1CalcFields(TDataSet *DataSet)
{
Table1Zarplat->Value = Table1Oplat/22->Value;
}
//---------------------------------------------------------------------------
[C++ Ошибка] pr_bd1.cpp(19): E2288 Pointer to structure required on left side of -> or ->*
Неприятности приходят и уходят, а жизнь продолжается!
Sweta вне форума Ответить с цитированием
Старый 14.10.2009, 22:21   #2
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Sweta
Table1Oplat/22->Value;
вероятно '/' здесь лишнее
netrino вне форума Ответить с цитированием
Старый 14.10.2009, 22:27   #3
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию

Дело в том, что мне необходимо значение из поля Oplat таблицы базы данных разделть на 22 и записать в поле Zarplat.
Неприятности приходят и уходят, а жизнь продолжается!
Sweta вне форума Ответить с цитированием
Старый 14.10.2009, 22:30   #4
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Хм... тогда может так:
Код:
Table1Oplat->Value/22 ?
Структуру делить нельзя, только если для неё не перегружен соответствующий оператор
netrino вне форума Ответить с цитированием
Старый 14.10.2009, 22:45   #5
Sweta
Форумчанин
 
Регистрация: 22.11.2007
Сообщений: 664
По умолчанию

А вычитать из нее можно?
У меня тут Архангельский под рукой, иду по его шагам, так как необходимо сделать контрольную, у него написано:
Table1AGE->Value=2006-Table1Year_b->Value, но мне вычитание не нужно, мне нужны опереции деления и умножения.
Неприятности приходят и уходят, а жизнь продолжается!
Sweta вне форума Ответить с цитированием
Старый 14.10.2009, 22:49   #6
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Да, но видите, здесь это можно вот как записать:
Код:
Table1AGE->Value=2006-(Table1Year_b->Value);
То есть сначала происходит обращение к элементу структуры, а потом уже вычисляется разница числа 2006 и элемента структуры.
То есть для деления нужно так, как я написал:
Код:
void __fastcall TForm1::Table1CalcFields(TDataSet *DataSet)
{
Table1Zarplat->Value = (Table1Oplat->Value)/22;
}
Иначе компилятор подумает, что Вы желаете структуру разделить на 22.
netrino вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как исправить ошибку? aiktz Паскаль, Turbo Pascal, PascalABC.NET 3 24.09.2009 18:56
Подскажите что исправить в коде Grisha248 Помощь студентам 5 25.05.2009 03:00
Как исправить? (исходник прилагается) Зеленый Общие вопросы C/C++ 2 01.10.2008 23:11
Как исправить??? BlackMamba Microsoft Office Word 1 03.08.2008 12:23
MySQL как исправить ошибку Dengar PHP 8 03.03.2008 03:29