Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> CXX0030: Error: expression cannot be evaluated, На строке: address->iAddress = 777 
:(
    Опции темы
malor
  Дата 10.9.2009, 08:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 632
Регистрация: 17.11.2006

Репутация: нет
Всего: нет



Код
typedef struct
{    int iAddress;                // ID в таблице адреса
    char  sAddress[20];        // Адрес(улица, дом)

} TAddressParam;            

  TAddressParam *address = NULL;    

  // Тестовое заполнение :
  char sTmp[20] = "ttt";
  address->iAddress = 777;
  strcpy(address->sAddress, sTmp);
Валится на строке: 
address->iAddress = 777;

Если  поставить точку останова на ней, то при наведении курсора  на слово address во всплывающей информационной развертке такие данные:
Цитата
address 0xcccccccc {iAddress = ??? sAddress = 0xcccccccc <Bad Ptr>}
   iAddress = CXX0030: Error: expression cannot be evaluated
   sAddress = 0xcccccccc <Bad Ptr> 
    

В чем проблема?

MS Visual Studio 2005
PM MAIL   Вверх
mrbrooks
Дата 10.9.2009, 08:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



malor, зачем указатель приравниваешь NULL?
PM MAIL   Вверх
andrew_121
Дата 10.9.2009, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Цитата(malor @  10.9.2009,  08:47 Найти цитируемый пост)
TAddressParam *address = NULL;

сделай так:
Код

TAddressParam *address = new TAddressParam;

когда больше не нужен будет, память освободи. так:
Код

delete address;



--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
malor
  Дата 10.9.2009, 10:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 632
Регистрация: 17.11.2006

Репутация: нет
Всего: нет



mrbrooks, так как без него на строчке 
address->iAddress = 777;
выскакивало сообщение:
Run-Time Check Failure #3 - The variable 'address' is being used without being initialized.

andrew_121,  ввел в код new и delete и все прошло гладко! Thnx.
PM MAIL   Вверх
andrew_121
Дата 10.9.2009, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



malor, тему отметь решенной.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
mrbrooks
Дата 10.9.2009, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



Цитата(malor @  10.9.2009,  10:03 Найти цитируемый пост)
mrbrooks, так как без него на строчке 

не плох бы для начало разобраться работу с указателями на объекты. 
Может проще было сделать копию объекта и работать с ним?
PM MAIL   Вверх
andrew_121
Дата 10.9.2009, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Кодофей
****


Профиль
Группа: Завсегдатай
Сообщений: 3448
Регистрация: 3.1.2008

Репутация: 10
Всего: 33



Цитата(mrbrooks @  10.9.2009,  10:08 Найти цитируемый пост)
Может проще было сделать копию объекта и работать с ним? 

Да, вероятно.
Но не понятно до конца, какова цель сего действа.


--------------------
Удалил аккаунт. Прощайте!
PM MAIL   Вверх
mrbrooks
Дата 10.9.2009, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 19
Всего: 306



Цитата(andrew_121 @  10.9.2009,  10:18 Найти цитируемый пост)
Но не понятно до конца, какова цель сего действа. 


Я это к тому - что прежде чем что то делать - неплохо бы понять как это делать  smile 
Но видимо форум действительно стал лучшей заменой книжек.


PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0480 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.