7 Переменные
Переменные позволяют давать имена значениям и ссылаться на них впоследствии. Вы уже сталкивались с переменными во многих примерах. Имя переменной должно быть последовательностью букв, цифр и символов подчеркивания, но не должно начинаться с цифры. Octave не накладывает ограничений на длину имен переменных, но редко бывает полезно иметь переменные с именами длиннее приблизительно 30 символов. Ниже приведены допустимые имена переменных
x x15 __foo_bar_baz__ fucnrdthsucngtagdjb
Однако, имена, такие как __foo_bar_baz__ , которые начинаются и заканчиваются двумя символами подчеркивания, понимаются как зарезервированные для внутреннего использования Octave. Не следует использовать их в вашем коде, за исключением доступа к задокументированным внутренним переменным и встроенным символическим константам Octave.
Регистр символов в именах переменных имеет значение. Символы a и A представляют собой разные переменные.
Имя переменной является допустимым выражением само по себе. Оно представляет текущее значение переменной. Переменным присваиваются новые значения с помощью операторов присваивания и операторов инкремента. См. Выражения присваивания.
Существует одна встроенная переменная со специальным значением. Переменная ans всегда содержит результат последнего вычисления, когда вывод не был присвоен никакой переменной. Код a = cos (pi) присвоит значение -1 переменной a, но не изменит значение ans. Однако, код cos (pi) установит значение ans в -1.
Переменные в Octave не имеют фиксированных типов, поэтому можно сначала сохранить числовое значение в переменной, а затем в той же программе использовать то же имя для хранения строкового значения. Переменные не могут быть использованы до тех пор, пока им не будет присвоено значение. Это приводит к ошибке.
- Автоматическая переменная: ans
-
Результат последнего вычисления, который не был явно присвоен переменной.
Например, после вычисления выражения
3^2 + 4^2
возвращаемое значение
ansравно 25.
- isvarname (name)
-
Возвращает true, если name является допустимым именем переменной.
Допустимое имя переменной состоит из букв, цифр и символов подчеркивания ("_"), и первый символ не должен быть цифрой.
- varname = matlab.lang.makeValidName (str)
- varname = matlab.lang.makeValidName (…, "ReplacementStyle", rs)
- varname = matlab.lang.makeValidName (…, "Prefix", pfx)
- [varname, ismodified] = matlab.lang.makeValidName (…)
-
Создать допустимое имя переменной varname из str.
Входной str должен быть строкой или ячейкой строк. Выходной varname будет того же типа.
Допустимое имя переменной - это последовательность букв, цифр и символов подчеркивания, которая не начинается с цифры.
Опция
"ReplacementStyle"определяет, как обрабатываются недопустимые символы. Допустимые значения:-
"underscore"(по умолчанию) -
Заменить все недопустимые символы символом подчеркивания (
"_"). "delete"-
Удалить все недопустимые символы.
"hex"Заменить все недопустимые символы их шестнадцатеричным представлением.
Пробельные символы всегда удаляются до применения
"ReplacementStyle". Строчные буквы после пробела будут заменены прописными.Опция
"Prefix"указывает строку pfx для добавления в качестве префикса к входу, если он начинается с цифры. pfx также должен быть допустимым именем переменной. По умолчанию префикс равен"x".Необязательный выходной параметр ismodified - это логический массив, указывающий, был ли соответствующий элемент в str допустимым именем или нет.
См. также: iskeyword, isvarname, matlab.lang.makeUniqueStrings.
-
- uniqstr = matlab.lang.makeUniqueStrings (str)
- uniqstr = matlab.lang.makeUniqueStrings (str, ex)
- uniqstr = matlab.lang.makeUniqueStrings (str, ex, maxlength)
- [uniqstr, ismodified] = matlab.lang.makeUniqueStrings (…)
-
Построение списка уникальных строк из списка строк.
Входной str должен быть строкой или ячейкой строк. Выходной uniqstr будет того же типа.
Алгоритм делает уникальными две строки, добавляя символ подчеркивания (
"_"и числовой счетчик к второй строке.Если ex является строкой или ячейкой строк, uniqstr будет содержать элементы, уникальные между собой и относительно ex.
Если ex представляет собой индексный массив или логический массив для str, то он выбирает подмножество str, которые делаются уникальными. Невыбранные элементы не изменяются.
Необязательный входной параметр maxlength определяет максимальную длину любой строки в uniqstr. Если строку нельзя сделать уникальной без превышения maxlength, выдается ошибка.
Необязательный выходной параметр ismodified - это логический массив, указывающий, был ли каждый элемент в str изменен для обеспечения уникальности.
См. также: unique, matlab.lang.makeValidName.
- namelengthmax ()
-
Возвращает максимальную длину имени переменной, совместимую с MATLAB.
Octave способен хранить строки длиной до 2^{31} - 1. Однако для совместимости с MATLAB все имена переменных, функций и полей структур должны быть короче длины, возвращаемой
namelengthmax. В частности, переменные, сохраненные в формате файла MATLAB (*.mat), будут иметь свои имена усеченные до этой длины.
| • Глобальные переменные: |
| • Постоянные переменные: |
| • Статус переменных: |
© 1996–2022 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v5.2.0/Variables.html