Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.26;
Скачать: CL | DM;

Вниз

Указатель String...   Найти похожие ветки 

 
Doc   (2003-06-12 08:10) [0]

Люди добрые!

Подскажите куда указывает стринговая переменная

Str:String;

В форуме проходило, что Str указывает на Str[1]

Действительно так?

Почему тогда нельзя передать в

ReadBuffer(Str,Count);

если по выше сказанному

ReadBuffer(Str[1],Count);

Полностью эквивалентны.

Спасибо.


 
theodor_iv ©   (2003-06-12 08:16) [1]


> Doc (12.06.03 08:10)
> что Str указывает на Str[1]
> Полностью эквивалентны.


С каких пор указатель стал полностью эквивалентен тому, на что он указывает?


 
VG   (2003-06-12 08:21) [2]

Строка типа string это просто массив переменных символьного типа. то в твоем случае Str[1] это первый символ в строке str.


 
Романов Р.В. ©   (2003-06-12 08:30) [3]

procedure AdrStr(S: string);
begin
ShowMessage(
"Адрес указателя на строку: " + IntToStr(Integer(@S)) +#13#10+
"Адрес первого символа: " + IntToStr(Integer(@S[1])) +#13#10+
"По адресу указателя на строку содержится адрес первого символа: " + IntToStr(Integer(PInteger(@S)^)));
end;


 
Романов Р.В. ©   (2003-06-12 08:41) [4]

procedure AdrShStr(S: ShortString);
begin
ShowMessage(
"Адрес указателя на строку: " + IntToStr(Integer(@S)) +#13#10+
"Адрес первого символа: " + IntToStr(Integer(@S[1])));
end;


 
theodor_iv ©   (2003-06-12 08:42) [5]


> VG (12.06.03 08:21)
> Строка типа string это просто массив переменных символьного
> типа. то в твоем случае Str[1] это первый символ в строке
> str.


Обалдеть... :)

Значит так: запускаем Дельфи, нажимаем F1, находим там Delphi Language Guide, в нем Memory Management, и внимательно читаем про Long String Types и Short String Types.



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

Текущий архив: 2003.06.26;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
1-84253
Gogol
2003-06-13 19:01
2003.06.26
Общая процедура OnChange на MyEdit: Array [0..n] of TEdit,


3-83910
Dimaz-z
2003-05-29 12:15
2003.06.26
Какие минимальные операции надо проделать, чтобы законнектить Ado


3-83994
DNK
2003-05-30 13:18
2003.06.26
Параметры с одинаковыми именами (ADO)


3-83951
yaric
2003-06-03 21:45
2003.06.26
Временные курсоры в теле хранимых процедур


1-84192
AtoL2k2
2003-06-12 09:56
2003.06.26
Две даты