Как хранятся строкиDelphi , Синтаксис , Текст и СтрокиКак хранятся строки
Автор: Vit Тип String:
по смещению -4 храниться длина строки Сама строка располагается в памяти как есть - каждая буква занимает 1 байт.
При копировании строки: то произойдёт физическое копирование содержимого строк, и теперь s1 и s2 будут показывать на разные адреса памяти. Тип PChar PChar - длина строки определяется от начала до #0 байта, по сути это чистой воды pointer, так что все действия по отслеживанию распределения памяти лежат на программисте - сами заботьтесь о том чтобы хватило места для распределения памяти и освобождении после использования. Тоже одна буква = 1 байт Для хранения unicode (т.е. 2х байтовых символов) используйте соответствующие символы с приставкой Wide... Примечание Fantasist'a: Это верно только если s1 - локальная переменная, или s1 и s2 - обе не локальные. Если s1 не локальная(глобальная или член класса), а s2 - локальная происходит копирование. Статья описывает типы строк в Паскале, включая хранение строки, счетчик ссылок на нее и физическое копирование содержимого при изменении строки. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Текст и Строки ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |