Показать полную графическую версию : Массив
Starter1
25-03-2012, 11:51
Подскажите пожалуйста самый простой пример массива, ну например английского алфавита. Чтобы когда задашь @echo A[4] (или как он там обозначается) выдавало в окно букву "e". Листал учебники и по форумам лазил, нашедшие примеры не работают.
::От 0 до 25 всего 26. "e" 4 по номеру так как с 0 отчёт.
call :array new A "'a' 'b' 'c' 'd' 'e' 'f' 'g' 'h' 'i' 'j' 'k' 'l' 'm' 'n' 'o' 'p' 'q' 'r' 's' 't' 'u' 'v' 'w' 'x' 'y' 'z'"
@echo A[5]
Заранее спасибо!
Anonymоus
25-03-2012, 12:24
Starter1, вот вам подборочка ссылок: 1 (http://forum.script-coding.com/viewtopic.php?id=6572), 2 (http://habrahabr.ru/post/75951/), 3 (http://pastie.org/3664762)
Все варианты работоспособны, последний кроме того, представляет из себя псевдо-базу данных (правда, заточенную под специфические цели). Выбирайте то, что вам больше по вкусу.
Чтобы когда задашь @echo A[4] (или как он там обозначается) выдавало в окно букву "e" »
@Echo Off
SetLocal EnableDelayedExpansion
Set cnt=0
For %%a In (a b c d e f g h i j k l m n o p q r s t u v w x y z) Do Set A[!cnt!]=%%a& Set /a cnt +=1
@echo %A[4]%
Pause>Nul
Starter1
25-03-2012, 13:45
gora, Set cnt=0 обязательно?
Starter1, обязательно, если хотите иметь "индекс массива" начиная с 0, а если с 1, то можно удалить и поменять местами пару команд:For %%a In (a b c d e f g h i j k l m n o p q r s t u v w x y z) Do Set /a cnt +=1& Set A[!cnt!]=%%a
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.