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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2012, 15:13   #1
frommars
Форумчанин
 
Регистрация: 02.07.2011
Сообщений: 144
По умолчанию непонятное поведение указателя

Приветствую!
Есть указатель, например, "char *ptr", читается файл построчно, и указателю присваивается значение строки и выводится. Если первая строка будет "12345", а вторая "qwe", то вторая при выводе будет выглядеть как "qwe45". А если после вывода первой строки сделать "*ptr = '\0';", то вторая выглядит как "345".
И вот собвственно вопрос: как сделать так, что бы вторая строка всё же корректно выводилась?

P.S. язык Си
frommars вне форума Ответить с цитированием
Старый 08.10.2012, 15:27   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

напрягает фраза
Цитата:
указателю присваивается значение строки и выводится
указателю можно присвоить только адрес, никак не "значение строки".
ты пример кода приводи, который по твоему мнению неверный. ибо есть подозрение, что память не выделяешь под указатель, либо читаешь неправильно.
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Непонятное поведение среды VB 6 wm_leviathan Общие вопросы по программированию, компьютерный форум 1 18.04.2012 11:50
Непонятное поведение скрипта AlexDn JavaScript, Ajax 7 06.08.2010 06:16
Непонятное поведение алгоритма master_root Общие вопросы Delphi 3 11.06.2008 14:32