Форум программистов, компьютерный форум, киберфорум
Наши страницы
Lazarus
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Hretgir
439 / 79 / 2
Регистрация: 25.01.2012
Сообщений: 3,091
Записей в блоге: 23
1

Length и SetLength

23.02.2016, 15:04. Просмотров 540. Ответов 5
Метки нет (Все метки)

Если задать
Pascal
1
SetLength(a,2);
то length(a) будет возвращать 2?

Добавлено через 30 минут
У меня какой-то из операторов в одной программе работает по разному в разных строках...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2016, 15:04
Ответы с готовыми решениями:

Setlength
Помогите пожалуйста сделать программу с setlength uses crt; type //...

Работа с SETLENGTH с параметром-открытым массивом
Помогите пожалуйста переписать программу с SETLENGTH с параметром-открытым...

SetLength работает с динамическим массивом переданым через параметры функции?
есть функция myfunk(var N:Array of integer):boolean; begin SetLength(N,10);...

Функция Length неправильно определяет длину строки в кириллице
Использую функцию length для определения количества символов, при английской...

SetLength & EOutOfMemory
Столкнулся с такой проблемой, при заполнении динамического массива данными из...

5
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26101 / 17501 / 6943
Регистрация: 22.10.2011
Сообщений: 30,823
Записей в блоге: 6
23.02.2016, 15:23 2
Цитата Сообщение от Hretgir Посмотреть сообщение
length(a) будет возвращать 2?
Будет. Если никто другой в другом месте программы не изменил размер массива.
0
Hretgir
439 / 79 / 2
Регистрация: 25.01.2012
Сообщений: 3,091
Записей в блоге: 23
23.02.2016, 15:31  [ТС] 3
А у меня не работает так как надо , никак, кто может менять размер массива, если ничего не происходило?
Никто не меняет - работает одна процедура, вот эта
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 begin
   counterStructur:=0;
   varStructura.counterStructur:=counterStructur;
   a1:=high(arraygrid);
   lengthArrStruktur:=length(arraygrid)+1;//на одну больше, потому что первая запишется информация о массиве
    writeln('length(arraygrid)',length(arraygrid));//выводим
  SetLength(arrStructure,lengthArrStruktur);//задаём размер массива
  writeln('length(arraygrid)',length(arraygrid));//выводим
  varStructura.pozithion:=mernost;
  varStructura.razmer:=lengthArrStruktur;
  arrStructure[0]:=varStructura;
  counterStructur1:=1;
  writeln('lengthArrStruktur',lengthArrStruktur);//выводим переменную размера массива
  writeln('length(arraygrid)',length(arraygrid));//выводим
  end;
и вот сообщения ею выводимые
размер массива arraygrid равен двум
0
Миниатюры
Length и SetLength  
Hretgir
439 / 79 / 2
Регистрация: 25.01.2012
Сообщений: 3,091
Записей в блоге: 23
23.02.2016, 15:34  [ТС] 4
Вот не работает на одном участке кода, никакой другой участок кода в это время не запускается , так-что просто не работает
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26101 / 17501 / 6943
Регистрация: 22.10.2011
Сообщений: 30,823
Записей в блоге: 6
23.02.2016, 15:35 5
Ну и где здесь изменение размера массива, и потом получение ЕГО ЖЕ размера? Все в каше: arraygrid, непонятно где и как описанный, и где и как его размер вообще установлен, размер arrStructure устанавливается, но размер его не получается нигде. Так что именно не работает-то?
0
Hretgir
439 / 79 / 2
Регистрация: 25.01.2012
Сообщений: 3,091
Записей в блоге: 23
23.02.2016, 16:09  [ТС] 6
Я увидел, извиняюсь, странно...

Добавлено через 4 минуты
Всё работает, странно.
0
23.02.2016, 16:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2016, 16:09

Как работает SetLength()
Вопрос такой: если у меня есть динамический массив dimass на n элементов я...

Incompatible types в функции SetLength
Добрый вечер. У меня в программе есть собственная функция, где применяется...

Вопрос про Length !
Привет всем. Использую функцию length для того что бы узнать сколько символов...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru