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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2010, 13:01   #1
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию Строки

До этого момента я пользовался строками в Delphi не раздумывая. Но вот прочитал в хелпе некоторые вещи. И сразу же возникли некоторые вопросы. Например, если S - это string(AnsiString), то что на самом деле происходит при касте PChar(S)? Происходит ли при этом выделение памяти? Если да, то что делается с "мусором"? Вроде, если PChar - это просто указатель, то ничего с ним не делается... А если нет, то откуда берётся #0 на конце? Строка-то вроде должна получиться null-terminated. Ничего не понимаю...
megachuhancer вне форума Ответить с цитированием
Старый 14.06.2010, 13:07   #2
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Память не выделяется таким оброзом, #0 это вроде в string хотя это тоже указатель.
VintProg вне форума Ответить с цитированием
Старый 14.06.2010, 13:14   #3
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Ааа, ну да. string - указатель. Что то меня переклинило. Всё теперь встаёт на свои места. Или не всё...
megachuhancer вне форума Ответить с цитированием
Старый 14.06.2010, 13:21   #4
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
Ааа, ну да. string - указатель. Что то меня переклинило. Всё теперь встаёт на свои места. Или не всё...
Да не переживай все у тебя получится!
VintProg вне форума Ответить с цитированием
Старый 14.06.2010, 13:24   #5
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Не, ну зачем тогда:
Цитата:
The eight bytes before the location contain a 32-bit length indicator and a 32-bit reference count.
В смысле зачем length indicator, если строка null-terminated всё равно? Я про AnsiString.
megachuhancer вне форума Ответить с цитированием
Старый 14.06.2010, 13:26   #6
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

megachuhancer
Ты с кем тут переписываешся???

Цитата:
The eight bytes before the location contain a 32-bit length indicator and a 32-bit reference count.
По английский написано? с секретным агентом джейс бондом?
VintProg вне форума Ответить с цитированием
Старый 14.06.2010, 13:27   #7
MadReason
Ищу работу
Форумчанин
 
Аватар для MadReason
 
Регистрация: 16.02.2007
Сообщений: 269
По умолчанию

http://www.codenet.ru/progr/delphi/stat/pchar.php

только почитай комменты)
Пишу на Delphi все что угодно, недорого, красиво, с комментариями
###icq 107335###
MadReason вне форума Ответить с цитированием
Старый 14.06.2010, 13:31   #8
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
только почитай комменты
И канчай с джейсом переписыватся.
VintProg вне форума Ответить с цитированием
Старый 14.06.2010, 13:33   #9
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Цитата:
И канчай с джейсом переписыватся.
Я просто привёл кусок хелпа. Привёл в оригинале всего лишь во избежание возможных недоразумений.
megachuhancer вне форума Ответить с цитированием
Старый 14.06.2010, 13:38   #10
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
Я просто привёл кусок хелпа. Привёл в оригинале всего лишь во избежание возможных недоразумений.
Ну это же шутка приятель.
VintProg вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. Александе еть я Общие вопросы C/C++ 5 13.04.2010 20:54
Удаление элементов строки s2 из строки s1 Ueshua Общие вопросы C/C++ 4 20.12.2009 13:06
Перенести символа с начала строки в место перед запятой этой же строки. Zhiltsov Microsoft Office Excel 4 05.06.2009 13:10
Строки. Как вывести часть строки? Anfall Общие вопросы Delphi 7 26.02.2009 09:10
считать из файла две строки, вывести на экран символы первой строки, которые отсутствуют во второй gotex Помощь студентам 4 08.05.2008 02:27