![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос про кол-во элементов в array[0..x] of string [D6, XP]
vegarulez © (2007-11-23 20:58:00)я задал
public
var_name:array[0..30] of string;
и хочу сделать for i=0 to 30 но взять не тридцать... а каунт или ленгс var_name`а.
Вопрос:
Как в инт вывести кол-во переменных массива?
vegarulez (2007-11-24 02:37:00) [1]Всё. всем псп. Трим помог разобраться со всеми задачками...
vegarulez (2007-11-24 02:28:00) [2]точно... trim.... как я мог забыть... ещё с пхп иго помню... :) пасиб... да в пол шестого субботы голова плохо уже варит :)
KilkennyCat (2007-11-24 02:19:00) [3]При поджатии сроков все средства хороши.
даже такая жуткая вещь, как replace кучки пробелов одним.
Или посимвольный перебор с отбросом пробелов.
Если все пробелы только с края, то trim
можно сделать через copy от pos и дальнейший trim
Германн (2007-11-24 02:12:00) [4]
> vegarulez © (24.11.07 02:04) [18]
Ну если уж ты настолько знаешь аглицкий, что способен употреблять русскую транскрипцию аглицких слов, то что тебе "мешает жить"?
vegarulez (2007-11-24 02:07:00) [5]
> З.Ы.Вот наглядный пример сторонников советовать "любую книжку
> по Дэлфи, чтоб стать программистом".
Знаю... знаю... посоветуйте команду, которую почитать, посмотреть в хелпе, для упрощения сей задачки.... Книжка очень информативна... стек не воспринимает стока информации... + время на её забивание отсутствует... да и оная книжка отсутствует... (правда есть в электронном виде, но об этом я умолчу, чтоб помидорами не закидали...) + утро стучится в окошко...
vegarulez (2007-11-24 02:07:00) [6]
> З.Ы.Вот наглядный пример сторонников советовать "любую книжку
> по Дэлфи, чтоб стать программистом".
Знаю... знаю... посоветуйте команду, которую почитать, посмотреть в хелпе, для упрощения сей задачки.... Книжка очень информативна... стек не воспринимает стока информации... + время на её забивание отсутствует... да и оная книжка отсутствует... (правда есть в электронном виде, но об этом я умолчу, чтоб помидорами не закидали...) + утро стучится в окошко...
KilkennyCat (2007-11-24 02:06:00) [7]что, пробел с каких-то пор перестал иметь размер?
vegarulez (2007-11-24 02:04:00) [8]в моём конкретном случае она не информативна... бикоз... сигнал #20 не информативен на бумаге при печате принтером...
KilkennyCat (2007-11-24 01:59:00) [9]
> т.е. не информативная строка
отсутствие чего-либо есть информация тоже.
> или можно как нить по другому попроще
Как? Сами подумайте, как компьютер ваще работает?
З.Ы.
Вот наглядный пример сторонников советовать "любую книжку по Дэлфи, чтоб стать программистом".
vegarulez (2007-11-24 01:46:00) [10]народ ещё такой вопрос...
подскажите как тут поступить...
если у меня стринг содержит строку вида: ' '
т.е. совокупность н-ого числа пробелов, но там нет никаких букв и цифр... т.е. не информативная строка... как отследить что там тока пробелы? по коду пробела в Chr? или можно как нить по другому попроще?...
что типа кроме пробелов больше ничего нету...
vegarulez (2007-11-24 01:21:00) [11]ну да... ))) раскусил :)))
Германн (2007-11-24 01:13:00) [12]
> vegarulez © (23.11.07 20:58)
>
> я задал
>
> public
> var_name:array[0..30] of string;
>
> и хочу сделать for i=0 to 30 но взять не тридцать... а каунт
> или ленгс var_name`а.
>
> Вопрос:
> Как в инт вывести кол-во переменных массива?
>
Так как не крути в массиве будет 31 переменная. Или ты что-то недоговариваешь.
vegarulez (2007-11-24 00:53:00) [13]
> Таки получается, что число элементов определяется не размерностью
> массива, а количеством записей в INI...
не... из ини беруться тока нужныеэлементы... и пусть там их будет мильён они беруться тока по названию контсант из массива 1
vegarulez (2007-11-24 00:48:00) [14]вот таким макаром... в качестве тестирования пока мемо использую, для наглядности, потом просто Тстрингс будет...
procedure TForm1.Button7Click(Sender: TObject);
var
i,j:integer;
begin
for j:=0 to High(var_name) do
for i:=0 to Memo1.Lines.Count-1 do begin
if Pos(var_name[j],Memo1.Lines.Strings[i])>0 then
begin
s:=copy(Memo1.Lines.Strings[i],1,Pos(var_name[j],Memo1.Lines.Strings[i])-1)+var_value[j]+copy(Memo1.Lines.Strings[i],Pos(var_name[j],Memo1.Lines.Strings[i])+length(var_name[j]),length(Memo1.Lines.Strings[i]));
break;
end;
end;
end;
vegarulez (2007-11-24 00:46:00) [15]не... TStringList врядли подойдёт... потому как у меня два массива один с названиями переменных, а другой с их значениями...
из инишника берётся тока часть переменных - констант, остальная часть формируется в программе... и запихивается в массив номер ТУ с номерами переменных из масива 1 где лежат названия переменных
при выводе на печать открывается шаблон файла, в котором используются эти переменные, и по значениям этих переменных в цикле подставляются значения массива нумбер ТУ...
korneley (2007-11-23 23:26:00) [16]
> vegarulez © (23.11.07 22:57) [9]
>ну я помещаю в этот масив данные, которые в цикле считываю из
>инишника
>...
>для считывания в цикле мне и нужно было узнать максимальное число
>элементов массива
Таки получается, что число элементов определяется не размерностью массива, а количеством записей в INI... А если дальше, то, может и не array вовсе нужен а TStringList?
vegarulez (2007-11-23 22:57:00) [17]ну я помещаю в этот масив данные, которые в цикле считываю из инишника... масив констант, нужных для моей программы.
и потом ими оперирую...
и вот для считывания в цикле мне и нужно было узнать максимальное число элементов массива (хотя я знаю их изначально, так как массив не динамический, а статический) но, чтобы не подставлять просто число в цикл...
вот собственно такая задачка была...
Anatoly Podgoretsky (2007-11-23 22:20:00) [18]А чего ты сделать хочешь?
vegarulez (2007-11-23 22:13:00) [19]если можно, поясните что вы имели ввиду под [1]...для особо одарённых личностей... вроде меня...
Anatoly Podgoretsky (2007-11-23 21:43:00) [20]> vegarulez (23.11.2007 21:37:05) [5]
Если непонятно зачем тебе, то зачем же спрашивал?
Или ты свой вопрос не понимаешь?