![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 127
|
![]()
Здравствуйте. В книге встретил такой вывод, что следующий код будет неправильный:
Код:
|
![]() |
![]() |
![]() |
#2 | ||
Участник клуба
Регистрация: 13.01.2009
Сообщений: 1,353
|
![]()
может потому, что автоматически этому указателю присваиваются все адреса символов строки, т.е. первого символа, потом увеличился указатель, и опять по циклу, а при выводе, извлекаются. По экспериментируйте. При отладке посмотрите, что в p храниться.
P.S. сейчас сам проверил. В переменной хранится строка. Т.е. мое предположение ещё одно. Что когда так делаем, то просто PChar работает как стринг. Ещё сейчас попробовал Цитата:
Цитата:
p:получает адрес первого символа из S:$1402B6C увеличили p, адрес: $15C2B6E увеличили p, адрес: $15C2B70 увеличили p, адрес: $15C2B72 От сюда следует, что адреса 1-го и остальных идут не по порядку, а только после 1-го как и положено по размеру PWideChar = 2 байта (Delphi 10) при простом присвоении p:='asffg'; первый символ имеет адрес:$4B332C 2-й $4B332E 3-й $4B3330 4-й $4B3332 Т.е. несколько по-другому хранится все. Какой может быть от этого вред, я не знаю. Вывод: наверное и так и так правильно. Но мне тоже интересно, что скажут профессионалы об этом.
"Тебе то может на меня и насрать, но твои глаза меня обожают!"
![]() Последний раз редактировалось ImmortalAlexSan; 12.12.2010 в 13:21. |
||
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
PChar | Superlotles | Помощь студентам | 15 | 09.10.2009 10:16 |
Эквивалент \n в PChar | VladimirVB | Общие вопросы Delphi | 1 | 28.08.2009 13:46 |
PChar | Роман Радер | Общие вопросы Delphi | 2 | 02.11.2008 18:50 |
Access violation на строке вида StrLCopy(PChar(st1),PChar(st2),10); | malor | Общие вопросы Delphi | 1 | 11.07.2007 13:39 |
Добавление к pchar | EdNovice | Общие вопросы Delphi | 2 | 15.04.2007 17:00 |