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

Вниз

Length   Найти похожие ветки 

 
Exile   (2006-07-19 14:25) [0]

Доброго всем дня, подскажите пожалуйста как определить первый символ в строке при условии что он заранее не изветсен.
Делаю так:
begin
for i:=0 to Memo2.Lines.Count do
begin
c:=memo2.Lines[i];
a:=length(c);
for j:=0 to a do
begin
s:=length((i)j);
st:=st+chr(strtoint(s));
Memo1.Lines[0]:=(st);
end;
end;
end.

неполучилось, говорит несовместимый тип


 
Zeqfreed ©   (2006-07-19 14:27) [1]

> [0] Exile   (19.07.06 14:25)

Надо полагать, что вот здесь несовместимый тип?

> s:=length((i)j);


 
Exile   (2006-07-19 14:29) [2]

Извиняюсь забыл переменные указать:
var
c,st,t:string;
i,j,b,s,a:integer;
e:char;
procedure TForm1.Button1Click(Sender: TObject);
begin
for i:=0 to Memo2.Lines.Count do
begin
c:=memo2.Lines[i];
a:=length(c);
for j:=0 to a do
begin
s:=length((i)j);
st:=st+chr(strtoint(s));
Memo1.Lines[0]:=(st);
end;
end;
end.


 
Amoeba ©   (2006-07-19 14:29) [3]

Глюкодром, а не код!


> s:=length((i)j);

А такое не будет даже компилироваться.


 
Amoeba ©   (2006-07-19 14:31) [4]

Для начала посмотри в справке описание ф-ии Length. Должно помочь.


 
Johnmen ©   (2006-07-19 14:32) [5]

а такое

>for i:=0 to Memo2.Lines.Count do
>begin
>c:=memo2.Lines[i];

даст гарантированный AV


 
Exile   (2006-07-19 14:32) [6]


> > s:=length((i)j);

про это я знаю, именно в этом и проблемма.
так можно как нибудь определить первый символ строки заранее его не зная?


 
StriderMan ©   (2006-07-19 14:33) [7]


> первый символ в строке при условии что он заранее не изветсен

если я правильно понял вопрос, то

Memo1.Lines[i][1]


 
cosinus ©   (2006-07-19 14:34) [8]

И index out bounds там вылезет...


> Exile   (19.07.06 14:25)  

Зачем писать столько коду, чтобы определить 1-й символ? Тебе что надо то конкретно?


 
Amoeba ©   (2006-07-19 14:36) [9]

Должно быть:
for i:=0 to Memo2.Lines.Count - 1;

for j:=1 to a do

индексация символов в строке начинается с 1.


 
VitGun ©   (2006-07-19 14:36) [10]

StriderMan

Почти угадал.

Memo1.Lines.Strings[i][1]


 
antonn ©   (2006-07-19 14:38) [11]

if length(memo.text)>0 then result:=memo.text[1];


 
antonn ©   (2006-07-19 14:39) [12]

antonn ©   (19.07.06 14:38) [11]
это для первой строки:)


 
cosinus ©   (2006-07-19 14:39) [13]


> Amoeba ©   (19.07.06 14:36) [9]

Вечная с этим путанница. По крайней мере у меня по первой была. Все с нуля до count-1, а тут с 1...


 
antonn ©   (2006-07-19 14:39) [14]

VitGun ©   (19.07.06 14:36) [10]
Почти угадал.
Memo1.Lines.Strings[i][1]

он не угадал, он знал


 
StriderMan ©   (2006-07-19 14:42) [15]


> VitGun ©   (19.07.06 14:36) [10]

property Strings[Index: Integer]: string; default;

ни о чем не говорит?


 
VitGun ©   (2006-07-19 14:53) [16]

StriderMan

property Lines: TStrings read FLines write SetLines;

ни о чем не говорит?


 
StriderMan ©   (2006-07-19 14:55) [17]


> VitGun ©   (19.07.06 14:53) [16]

я имел ввиду словечко default.


 
Exile   (2006-07-19 16:51) [18]

Все сделал , спасибо всем:
var
a,e,st:string;
i,t,j,b:integer;
s:char;

begin
for i:=0 to Memo2.Lines.Count-1 do
begin
a:=Memo2.Lines[i];
t:=length(a);
for j:=1 to t do
begin
s:=memo2.lines[i][j];
b:=ord(s);
st:=st+inttostr(b)+", ";
Memo1.Lines[0]:=(st);
end;
end;
end;
end;


 
StriderMan ©   (2006-07-19 17:02) [19]


> Exile   (19.07.06 16:51) [18]

долго вникал в код... асилил... вроде бы...

я так полагаю этот код выведет ASCII-кодывсех символов из Memo2.text.

Но это совсем не то что написано в заголовке темы!!!

> как определить первый символ в строке

при чем тут первый символ? зачем циклы с перебором?

ничего не понял короче.


 
Exile   (2006-07-19 17:50) [20]


> StriderMan ©   (19.07.06 17:02) [19]
>
>


> при чем тут первый символ? зачем циклы с перебором?
>
> ничего не понял короче.

все правильно просто мне на мыло пришло письмецо с интересным содержимым, а именно это был скирпт написанный в char
@ src="javascript:document.write(String.fromCharCode(и далее идет остальное тело проги но в char
вот я и решил перевести этот скрипт, потом решил написать прогу которая бы переводила текст из одного поля (memo2) и выводило тотже текст но уже в char в другое (memo1) и наоборот.
щас только вот встала другая проблемма при переводе из char в символы, если один код от другого отделять запятой то как дать цикл по строке, т.е. чтобы к примеру есть строка: 102,97,115,101
и к переменной i по очереди подстовлять 102 потом 97 и т.д.


 
StriderMan ©   (2006-07-19 18:04) [21]


> Exile   (19.07.06 17:50) [20]

понял.

можно загрузить строку с кодами символов (их я так понял вы называете словом "char") в TStringList у которого выставить delimeter := ",". тогда в каждой строке этого StringList"а будет код символа. потом пробежаться по строчкам и преобразовать

s := s + char(strToInt(StringList.Strings[i]));



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

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

Наверх





Память: 0.49 MB
Время: 0.013 c
15-1152450316
анка
2006-07-09 17:05
2006.08.06
Стоит ли ехать в Питер во время Саммита?


15-1152592598
antonn
2006-07-11 08:36
2006.08.06
вопросик по авибилетам...


15-1152613746
SoftService
2006-07-11 14:29
2006.08.06
J2ME compiler


4-1145342218
max999
2006-04-18 10:36
2006.08.06
Как правильно выбирать шрифты для рисования...


1-1151256672
Billis
2006-06-25 21:31
2006.08.06
Как в DBGrid узнать какая строка выделена?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский