Доброго всем всего!
Появился один дурацкий вопрос...
Имеется вот такая вот структура:
struct tAddressStruct
{
CString email;
CString Comment;
} m_AddressStruct;
В некотором месте программы объявляется указатель на нее:
tAddressStruct * as;
as = (tAddressStruct *) malloc (sizeof (tAddressStruct));
и по этому указателю записываются данные:
as->email = "111"; //dlg.m_NewAddres ;
as->Comment = "222"; //dlg.m_Comment ;
вот. компилится этот кусок нормально, но когда программа добирается до этого места, то грохается с эксепшеном.
не подскажите ли как с этим бороться?
зараннее спасибо....
Здравствуйте, Rat, Вы писали:
Rat>Имеется вот такая вот структура:
Rat>Rat> struct tAddressStruct
Rat> {
Rat> CString email;
Rat> CString Comment;
Rat> } m_AddressStruct;
Rat>
Rat>В некотором месте программы объявляется указатель на нее:
Rat>Rat> tAddressStruct * as;
Rat> as = (tAddressStruct *) malloc (sizeof (tAddressStruct));
Rat>
Rat>и по этому указателю записываются данные:
Rat> as->>email = "111"; //dlg.m_NewAddres ;
as->>Comment = "222"; //dlg.m_Comment ;
Rat>
Rat>вот. компилится этот кусок нормально, но когда программа добирается до этого места, то грохается с эксепшеном.
Rat>не подскажите ли как с этим бороться?
malloc дает Вам не-инициализированный кусок памяти. Вам нужны правильно сконструированные CString-и. Попробуйте new вместо malloc.
Влад.
Здравствуйте, Rat, Вы писали:
Rat>Доброго всем всего!
Rat>Появился один дурацкий вопрос...
Rat>Имеется вот такая вот структура:
Rat>Rat> struct tAddressStruct
Rat> {
Rat> CString email;
Rat> CString Comment;
Rat> } m_AddressStruct;
Rat>
Rat>В некотором месте программы объявляется указатель на нее:
Rat>Rat> tAddressStruct * as;
Rat> as = (tAddressStruct *) malloc (sizeof (tAddressStruct));
Rat>
Тут лучше писать
as = new tAddressStruct.
И все заработает.
С new все заработало.
большое спасибо за ответы.