|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
03.03.2011, 17:49 | #1 |
Пользователь
Регистрация: 03.03.2011
Сообщений: 12
|
Не присваивается значение указателю в C++ Builder
Код:
функцией wcstombs. В таблице строка типа "Иванов Иван Иванович". Затем разбиваю эту строку функцией strtok() и забираю оттуда имя - "Иван", на которое указывает указатель char * p1. Чтобы занести результат в таблицу ADODataSet1Name->Value, конвертирую p1 назад в wchar_t функцией mbstowcs(). Билдер не выдаёт ошибки при компиляции. Но, когда запускаю проект, вылазиет --------------------------- Debugger Exception Notification --------------------------- Project Project1.exe raised exception class EAccessViolation with message 'Access violation at address 32658E01 in module 'CC3260MT.DLL'. Read of address 00000001'. Process stopped. Ошибка указывает на строку Код:
Хотя в функции wcstombs() ему должно присваиваться значение ADODataSet1FIO->Value. Так как я имею дело с БД, то возможно, что первое значение базы данных считается, а при подсчёте следующего значения какая то из переменных неправильно сохраняется. Объясните пожалуйста, в чём проблема. Последний раз редактировалось DaysOfGrace; 03.03.2011 в 17:53. |
03.03.2011, 18:04 | #2 |
Пользователь
Регистрация: 02.02.2011
Сообщений: 92
|
char *ptr указывает в космос.
Отведите память под буфер : Код:
|
03.03.2011, 18:13 | #3 | |
Пользователь
Регистрация: 03.03.2011
Сообщений: 12
|
Цитата:
На всякий случай, проделал тоже и для *p1, *p2. Последний раз редактировалось DaysOfGrace; 03.03.2011 в 18:18. |
|
03.03.2011, 18:17 | #4 |
Пользователь
Регистрация: 02.02.2011
Сообщений: 92
|
Для p1 не надо - будут утечки памяти.
Для p2 - надо. Ну и не забывайте освобождать память, когда она больше не нужна |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
есть ли что то по указателю? | the_deer_one | Общие вопросы C/C++ | 3 | 21.08.2010 23:18 |
Массиву *char не присваивается элемент CString'a | MoroZzz45 | Общие вопросы C/C++ | 2 | 13.06.2010 15:46 |
Массиву класса не присваивается значения локального массива | MoroZzz45 | Общие вопросы C/C++ | 7 | 06.06.2010 14:42 |
Не присваивается!!! | prouser | Общие вопросы C/C++ | 3 | 02.05.2010 22:11 |
Вопрос по указателю | marazmaticus | Общие вопросы C/C++ | 6 | 12.03.2010 00:05 |