|
0 / 0 / 1
Регистрация: 29.07.2009
Сообщений: 119
|
|
Процедура присваения значения элементу массива22.08.2009, 22:22. Показов 1015. Ответов 9
Метки нет (Все метки)
Здравствуйте! Есть процедура, которой передаётся массив строк и число - индекс какого-нибудь елемента. Процедура присваевает элементу с этим индексом значение (например вводимое с клавиатуры). Когда в главной программе элемент с этим индексом выводится на экран, оказывается, что он пуст! Почему так? Ведь когда мы в процедуре изменяем числовую переменную, в главной программе видно, что она изменяется.
0
|
|
| 22.08.2009, 22:22 | |
|
Ответы с готовыми решениями:
9
|
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||||||
| 22.08.2009, 23:01 | ||||||
|
Вообще-то надо бы Ваш код посмотреть. А в принципе так
0
|
||||||
|
0 / 0 / 1
Регистрация: 29.07.2009
Сообщений: 119
|
||||||
| 22.08.2009, 23:12 [ТС] | ||||||
|
Я говорю о массиве строк... Ну например:
0
|
||||||
|
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
|
|
| 23.08.2009, 00:48 | |
|
Приветствую, puporev, давно не заходил.
Алекс, это же прозрачно, когда создается функция она создает массив, который никак не связан с остальным кодом программы, я имею ввиду, что перед переменной S не стоит ключевого слова вар. И кроме того, создается открытый массив, в котором нумерация с нуля, а не, это учтено, не заметил, короче, подстановка слова var перед переменной S в объявлении функции, исправит проблему, это будет означать что этот параметр будет по ходу функции изменяться.
1
|
|
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||
| 23.08.2009, 09:35 | ||
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||||||
| 23.08.2009, 09:58 | ||||||
|
У Вас и все остальное неправильно написано, надо например так.
1
|
||||||
|
0 / 0 / 1
Регистрация: 29.07.2009
Сообщений: 119
|
|
| 23.08.2009, 10:19 [ТС] | |
|
Вы мне прям с озов))) Про вар объяснили, спасибо. Этого я ещё не знал. А зачем тип объявлять? Нельзя объявить просто массив?
0
|
|
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||
| 23.08.2009, 10:22 | ||
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 23.08.2009, 10:28 | |
|
Кстати динамических массивов типа array of string в Паскале нет. Еще, при объявлении строковых массивов желательно ограничивать если это возможно длину строки, иначе, напрмер при объявлении большого массива, порядка 200 элементов, у Вас просто не хватит памяти под него, поскольку по умолчанию тип string в Паскале это 255 символов. Редко же пользуемся строками длиннее 80 символов.
type mas=array[1..200] of string[80]; При использовании записей(record), бывает несколько строковых полей в одной записи, что требует памяти. Там вообще приходиться прикидывать максимальную длину полей и ограничивать до 10, 20 символов.
0
|
|
|
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
|
|
| 23.08.2009, 10:29 | |
|
Или можно не объявлять в начале и потом не пользоваться, а объявить только когда объявляешь переменную.
Типа такого: var mas:array[0..10] of integer; begin ...
0
|
|
| 23.08.2009, 10:29 | |
|
Помогаю со студенческими работами здесь
10
Удалить из массива все элементы, значения которых равны наименьшему элементу
Задание значения конкретному элементу массива Присвоение значения элементу двумерного массива
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|