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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.04.2011, 18:25   #1
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию *указатель = *указатель

если кто знает, буду страшно благодарен, сам измучился уже, идеи кончились

есть 2 указателя на char.
char *expression, *temp;

нужно по очереди присваивать значения строки expression строке temp, если это не пробел. делаю так:
while (*expression!='\0')
{
if (*expression!=' ') {*temp = *expression; temp++;}
expression++;
}

компилятор съедает, а в винде вылазит ошибка, что temp используется до того как был проинициализирован....

как грамотно скопировать значение ячейки памяти через указатели???
tiger() вне форума Ответить с цитированием
Старый 12.04.2011, 19:23   #2
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Так вы прочитайте, какая ошибка-то...
Цитата:
temp используется до того как был проинициализирован....
На что у вас temp (не разыменованный) указывает?
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 12.04.2011, 19:32   #3
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Сtrl Посмотреть сообщение
Так вы прочитайте, какая ошибка-то...

На что у вас temp (не разыменованный) указывает?
кажется понимаю намек... temp=new char(80);?
tiger() вне форума Ответить с цитированием
Старый 12.04.2011, 19:34   #4
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Код:
temp = new char [strlen(expression)];
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 12.04.2011, 19:58   #5
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Сtrl Посмотреть сообщение
Код:
temp = new char [strlen(expression)];
ухты круто

Ctrl, спасибо! все работает. только там круглые скобы
tiger() вне форума Ответить с цитированием
Старый 12.04.2011, 20:19   #6
Сtrl
C++
Форумчанин
 
Аватар для Сtrl
 
Регистрация: 27.03.2011
Сообщений: 803
По умолчанию

Цитата:
только там круглые скобы
Ну, вообще, квадратные обычно используются.
Ищете информацию по C++?
cplusplus.com
Сtrl вне форума Ответить с цитированием
Старый 12.04.2011, 21:01   #7
Red Planet
Новичок
Джуниор
 
Регистрация: 12.04.2011
Сообщений: 1
По умолчанию

Добрый вечер! Тоже работаю с указателями и немного запутался.
Код:
int *a,*b;
a=b;
В этом нет ничего страшного, просто два указателя будут ссылаться на одну и ту же память, так?
Red Planet вне форума Ответить с цитированием
Старый 10.05.2011, 12:49   #8
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Red Planet Посмотреть сообщение
Добрый вечер! Тоже работаю с указателями и немного запутался.
Код:
int *a,*b;
a=b;
В этом нет ничего страшного, просто два указателя будут ссылаться на одну и ту же память, так?
перед тем как делать a=b; нужно инициализировать b (например, b = &x; или b = new int()). тогда оба указателя будут указывать на одну и ту же ячейку. но использовать это нужно осторожно. иначе с одного объекта данные могут быть удалены, а второй будет продолжать использоваться, когда там уже лежит какой-нибудь левый мусор.
tiger() вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
указатель на указатель петя иванов Общие вопросы C/C++ 5 10.04.2011 02:23
Указатель RobinVit Помощь студентам 3 05.05.2010 16:18
Указатель this Golovastik Общие вопросы C/C++ 8 16.01.2010 10:30
(!)указатель на указатель(!) (C)stalin(Cpp) Общие вопросы C/C++ 0 07.06.2009 15:32
Указатель n на m CESHNIK Общие вопросы C/C++ 7 07.03.2008 23:35