Вниз
Скачать: CL | DM;

Помогите разобраться с адресами STR и STR[1]...   Найти похожие ветки 

← →
Hog   (2003-06-10 15:45) [0]

Всем привет!

По адресам переменной Str:String получаю на выходе
Adress Str - 0012F5A0, Str[1] - 00902430

У меня возник вопрос, Str это как раз и есть адрес нулевого элемента массива или нет?

str = str[0] ????

Спасибо.


← →
HolyGlory   (2003-06-10 15:55) [1]

Если Str - huge string - то нет, а если Str - обычный (ShortString) - то да.


← →
Юрий Федоров ©   (2003-06-10 16:09) [2]

>>У меня возник вопрос, Str это как раз и есть адрес
>>нулевого элемента массива или нет?
Ты же сам видишь, что адреса ортличаются не на 1 :-)


← →
Hog   (2003-06-10 16:17) [3]

А почему тогда нельзя передавать в Var функции Str без индекса?

Чем этот адресс плох?


← →
Виктор Щербаков ©   (2003-06-10 16:18) [4]

Почитай у Тейксейры и Пачеко о внутреннем представлении типа string.
Сразу всё станет понятно.


← →
han_malign ©   (2003-06-10 16:25) [5]

>А почему тогда нельзя передавать в Var функции Str без индекса?

PChar(str)^


← →
Hog   (2003-06-10 17:18) [6]


> Виктор Щербаков © (10.06.03 16:18)
> Почитай у Тейксейры и Пачеко о внутреннем представлении
> типа string.
> Сразу всё станет понятно.


Прочитал, но там не сказано про адреса ничего...
Именно про S S[0] S[1] и т.д.



Если AnsiString устроена по другому

по книге

Allocation Size|Ref Count|Length|D|D|G|#0

То почему нет доступа к нулевому элементу s[0]?

Что в нём и храниться Allocation Size|Ref Count|Length????

И что адрес S[0] отличается на единицу от S[1]
У меня посмотреть не получилось....


← →
MBo ©   (2003-06-10 17:25) [7]

для AnsiString забудь про S[0]



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.025 c
1-84345
Кен
2003-06-09 05:37
2003.06.26
Что изменить в Дельфи, чтобы она сохраняла формы в dfm-файлы


7-84807
Alkinoy
2003-04-15 16:56
2003.06.26
Научите, пожалуйста, обрабатывать прерывания.


1-84329
Viktoria
2003-06-15 18:35
2003.06.26
Обновление метки в цикле.


3-84001
clickmaker
2003-05-30 14:17
2003.06.26
TClientDataSet.Locate русских строк вызывает AV в kernel32.dll


1-84268
Ajax
2003-06-13 21:10
2003.06.26
Интересный глюк...




   Наверх