Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];

Вниз

Определение длины стринга   Найти похожие ветки 

 
ORMADA   (2003-10-10 12:15) [0]

Есть стринг
str :string[8];
на начальном этапе он пустой =>length(str)=0
а как поучить реальный размер этой переменной т.е. 8 ?


 
Skier   (2003-10-10 12:16) [1]

>ORMADA © (10.10.03 12:15)
SizeOf()


 
Verg   (2003-10-10 12:18) [2]

high(Str)


 
ORMADA   (2003-10-10 12:19) [3]

thanks Skier но надо писать почему то
sizeof(str)-1


 
Skier   (2003-10-10 12:22) [4]

>ORMADA © (10.10.03 12:19) [3]
1) Лучше писать Verg © (10.10.03 12:18) [2]
2) Лучше не называть переменную str


 
Skier   (2003-10-10 12:33) [5]

(посыпает голову пеплом) - мой первый пост, считать глупостью !


 
ORMADA   (2003-10-10 12:36) [6]

верно high возвращает то что нужно простоя я раньше дамал что high только к массивам относиться а по поводу имнования это ваще отбалды для примера
thanks=>Skier


 
Anatoly Podgoretsky   (2003-10-10 12:39) [7]

ORMADA © (10.10.03 12:19) [3]
а реальный размер этой переменной 9


 
Verg   (2003-10-10 12:40) [8]

The standard functions High and Low operate on short-string type identifiers and variables. High returns the maximum length of the short-string type, while Low returns zero. (C) Delphi Help


 
ORMADA   (2003-10-10 12:41) [9]

=>Anatoly Podgoretsky ПОЧЕМУ ?????????? из-за нумерации с 0 ?


 
Johnmen   (2003-10-10 12:55) [10]

>Skier © (10.10.03 12:33)

Нет. Не глупость. Просто забыл учесть особенности типа.
Кстати, размер все равно будет получен на этапе компиляции.


 
Skier   (2003-10-10 12:57) [11]

>Johnmen © (10.10.03 12:55) [10]
Нет. Я настаиваю ! :)
В контесте вопроса вполне хватит и High(...)


 
sts   (2003-10-10 12:59) [12]

2 ORMADA © (10.10.03 12:41) [9]
1 -й байт - длина строки


 
Плохиш_   (2003-10-10 13:00) [13]

Skier © (10.10.03 12:57) [11]

В контесте вопроса 8 не есть реальный размер этой переменной


 
ORMADA   (2003-10-10 13:03) [14]

=>Плохиш c чего ты взял ? вопрос
Есть стринг
str :string[8];
на начальном этапе он пустой =>length(str)=0
а как поучить реальный размер этой переменной т.е. 8 ?

8 и есть то что Я хочу получить т.е. то что стоит м/у []


 
han_malign   (2003-10-10 13:03) [15]

>я раньше дамал что high только к массивам относиться
- а это и есть массив array[0..8]of char, только с дополнительной compiler magic...


 
Verg   (2003-10-10 13:04) [16]


> Плохиш_ (10.10.03 13:00) [13]
> Skier © (10.10.03 12:57) [11]
>
> В контесте вопроса 8 не есть реальный размер этой переменной


Ну если хочет человек иметь именно 8 из String[8] - пусть имеет. :)

Главное - знать чего хочешь.


 
[lamer]Barmaglot   (2003-10-10 13:18) [17]

Ну и мои пять копеек...

procedure TForm1.Button1Click(Sender: TObject);
const
s: string="lamer";
var
p: pInteger;
begin
p:=@S[1];
Dec(p,1);
Edit1.text:=inttostr(p^);
end;


 
ORMADA   (2003-10-10 13:31) [18]

А ка тогда это можно сделать по другому т.е. создать стринг длиной x символов пустых т.е." "
я делаю это так но
s:="";
for i := 1 to X do
s := s + " ";
может быть можно сделать как-нить иначе.


 
Anatoly Podgoretsky   (2003-10-10 13:33) [19]

ORMADA © (10.10.03 13:03) [14]
Ну опять а реальный размер этой переменной 9, тебе нужен не размер переменной, а максимально возможную длину тексата, для этого один из двух приведенных вариантов, при том вариант с High предпочтительный, поскольку первый с -1 хакерский, основанный на знание текущей структуры такокой строки. А на внутреннм знание много народу погорело.


 
Verg   (2003-10-10 13:40) [20]


> может быть можно сделать как-нить иначе.


S:=StringOfChar(" ", X);


 
[lamer]Barmaglot   (2003-10-10 13:50) [21]

бр-р-р-р
Может я чего не понимаю?

SetLength() установить размер строки.....
FillChar() Заполнить строку определенным символом, в твоем случае пробелом.


 
ORMADA   (2003-10-10 14:03) [22]

thanks =>Skier,Verg ,[lamer]Barmaglot,Anatoly Podgoretsky за реальные советы!



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

Форум: "Основная";
Текущий архив: 2003.10.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.01 c
1-74157
Prankster
2003-10-10 16:41
2003.10.23
Глобальные переменные и процедуры


1-74164
zdn
2003-10-09 20:49
2003.10.23
Сервисы в Delphi


3-74067
Russko
2003-10-02 13:00
2003.10.23
Key violation


3-74031
Sodom
2003-10-03 12:37
2003.10.23
Кнннект к Firebird


11-74105
asp
2003-02-07 08:24
2003.10.23
установка KOL &MCK





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский