Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - 日本語 -
Справка Scilab >> Scilab > Управление ошибками > Таблица ошибок

Таблица ошибок

список сообщений главных стандартных ошибок

Описание

Эта страница даёт неполный список главных стандартных предопределённых сообщений об ошибках, исползуемых в самом Scilab. Эти сообщения так же могут быть использованы во внешнем коде.

Какой бы ни был язык текущей сессии Scilab, используется английская версия сообщений в качестве идентификатора сообщения с помощью системы перевода gettext(). В самом Scilab используются перечисленные сообщения.

Пожалуйста, избегайте использования двойных кавычек " внутри сообщения: вместо них должны использоваться одинарные кавычки '.

Сообщение может включать в себя некоторые метки, начинающиеся с символа "%". Эти метки соответствуют Си-подобному синтаксису (см. правила преобразования printf()). Они предназначены для замены настраиваемым содержимым для того, чтобы настроить стандарт под локальные данные благодаря msprintf. Чтобы включить в такое сообщение собственном символ "%" используйте "%%".

Стандартные сообщения должны начинаться с "%s" и заканчиваться "\n". Стоящее впереди "%s" будет заменено именем функции, в которой произошла ошибка.

Проверка количества аргументов

Входные аргументы:

"%s: Wrong number of input arguments.\n"
"%s: Wrong number of input arguments: %d expected.\n"
"%s: Wrong number of input arguments: %d or %d expected.\n"
"%s: Wrong number of input arguments: %d to %d expected.\n"
"%s: Wrong number of input arguments: At least %d expected.\n"
"%s: Wrong number of input arguments: At most %d expected.\n"

Выходные аргументы:

"%s: Wrong number of output arguments: %d expected.\n"
"%s: Wrong number of output arguments: %d to %d expected.\n"

Проверка типов контейнера и содержимого

Неверный тип содержимого:

"%s: Argument #%d: Boolean(s) expected.\n"

"%s: Argument #%d: Encoded integer expected.\n"
"%s: Argument #%d: Encoded integer of type (%s) expected.\n"
"%s: Argument #%d: Integer expected.\n"         // целочисленное или десятичное кодирование
"%s: Argument #%d: Decimal integer expected.\n"
"%s: Argument #%d: Decimal number expected.\n"
"%s: Argument #%d: Decimal or complex number expected.\n"
"%s: Argument #%d: Complex number expected.\n"
"%s: Argument #%d: Complex number not supported.\n"

"%s: Argument #%d: Polynomial expected.\n"
"%s: Argument #%d: Rational fraction expected.\n"
"%s: Argument #%d: Polynomial or rational expected.\n"
"%s: Argument #%d: Real polynomial expected.\n"
"%s: Argument #%d: Real rational expected.\n"

"%s: Argument #%d: Text(s) expected.\n"

"%s: Argument #%d: Graphic handle expected.\n"
"%s: Argument #%d: Graphic handle of type ''%s'' expected.\n"

"%s: Argument #%d: Function expected.\n"
"%s: Argument #%d: Transfer function expected.\n"
"%s: Argument #%d: Linear state space expected.\n"
"%s: Argument #%d: %s expected.\n"

"%s: Type %s is not implemented.\n"

Неверный контейнер:

"%s: Argument #%d: List expected.\n"
"%s: Argument #%d: Cell expected.\n"
"%s: Argument #%d: Structure expected.\n"
"%s: Argument #%d: M-list expected.\n"
"%s: Argument #%d: T-list of type %s expected.\n"
"%s: Argument #%d: %s expected.\n"

Неверное кодирование:

"%s: Argument #%d: Sparse matrix expected.\n"
"%s: Argument #%d: Dense matrix expected.\n"

Проверка размерности и размеров контейнера

Размерности / размеры / форма контейнера:

  • "Массив" применяется к селл-массивам и структурам
  • "Скаляр", "Строка", "Столбец" применяются к матрицам и некоторым другим массивам (селл-массивам и структурам)

"%s: Argument #%d: Non-empty matrix expected.\n"
"%s: Argument #%d: Empty matrix expected.\n"
"%s: Argument #%d: Scalar (1 element) expected.\n"
"%s: Argument #%d: Row expected.\n"
"%s: Argument #%d: Column expected.\n"
"%s: Argument #%d: Vector expected.\n"
"%s: Argument #%d: Row with %d elements expected.\n"
"%s: Argument #%d: Column with %d elements expected.\n"
"%s: Argument #%d: Vector with %d elements expected.\n"

"%s: Argument #%d: Matrix expected.\n"
"%s: Argument #%d: Square matrix expected.\n"
"%s: Argument #%d: %d-by-%d matrix expected.\n"
"%s: Argument #%d: Matrix with %d rows expected.\n"
"%s: Argument #%d: Matrix with %d columns expected.\n"
"%s: Argument #%d: Matrix with %s rows expected.\n"    // %s является наиболее общей; она может использоваться для диапазона
"%s: Argument #%d: Matrix with %s columns expected.\n" // то же самое
"%s: Argument #%d: 2D-array expected.\n"

"%s: Argument #%d: Hypermatrix expected.\n"
"%s: Argument #%d: %dD hypermatrix expected.\n"
"%s: Argument #%d: %dD array expected.\n"

"%s: Argument #%d: %d-element list expected.\n"
"%s: Argument #%d: List of %d to %d elements expected.\n"

"%s: Argument #%d: %s expected.\n"
"%s: Implicit size not supported.\n"
"%s: Hypermatrix not supported.\n"

Строковые значения

"%s: Argument #%d: string length %s %d characters expected.\n" // '='|'>'|'>='|'<' ...etc

Проверка значений

Неверные значения:

"%s: Argument #%d: Must be in the interval [%s, %s].\n"
"%s: Argument #%d: Must be in the interval [%d, %d].\n"
"%s: Argument #%d: Must be in the interval %s.\n"
"%s: Argument #%d: Must be < %d.\n"
"%s: Argument #%d: Must be > %d.\n"
"%s: Argument #%d: Must be <= %d.\n"
"%s: Argument #%d: Must be >= %d.\n"
"%s: Argument #%d: Inf value forbidden.\n"
"%s: Argument #%d: Nan value forbidden.\n"
"%s: Argument #%d: Inf and Nan values forbidden.\n"
"%s: Argument #%d: ''%s'' expected .\n"
"%s: Argument #%d: Must be in the set {%s}.\n"
"%s: Argument #%d: Non-negative integers expected.\n"
"%s: Argument #%d: Elements must be in increasing order.\n"
"%s: Argument #%d: Elements must be in decreasing order.\n"
"%s: Argument #%d: Elements must be in strictly increasing order.\n"
"%s: Argument #%d: Elements must be in strictly decreasing order.\n"
"%s: Argument #%d: An integer value expected.\n"

"%s: Argument #%d: Unknown or unexpected property name ''%s''.\n"
"%s: Argument #%d: Wrong type of graphic handle: ''%s'' expected.\n"
"%s: Argument #%d: The %s handle is no longer valid.\n"  // графики, XML, lu и другие указатели
"%s: Argument #%d: Wrong color specification.\n"

Обратите внимание, что сообщение об ошибке для интервалов является особым: любой тип интервала наподобие [#, #], (#, #], [#, #), (#, #) (-oo, #], [#, oo) и др. может без труда определён внутри того же унифицированного сообщения. Должны быть выполнены границы форматирования и замещения с помощью msprintf(..)

Проверка связи между аргументами:

"%s: Arguments #%d and #%d: Incompatible sizes.\n"
"%s: Arguments #%d and #%d: Same sizes expected.\n"
"%s: Arguments #%d and #%d: Same numbers of columns expected.\n"
"%s: Arguments #%d and #%d: Same numbers of rows expected.\n"
"%s: Arguments #%d and #%d: Same numbers of elements expected.\n"
"%s: Arguments #%d and #%d: Same types expected.\n"
"%s: Arguments #%d and #%d: Same formal variable expected.\n"  // полиномы и рациональные значения

Файлы, папки

"%s: Cannot open file ''%s''.\n"
"%s: The file ''%s'' does not exist.\n"
"%s: File ''%s'': Read access denied.\n"
"%s: File ''%s'' already exists or directory write access denied.\n"
"%s: Error while copying the file ''%s'' to the directory ''%s''.\n"
"%s: The file ''%s'' cannot be written.\n"
"%s: The file ''%s'' is not well formated at line %d\n"
"%s: Cannot close the file ''%s''.\n"
"%s: End of file at line %d.\n"
"%s: Binary direct access files must be opened by ''file''.\n"
"%s: C file logical unit not allowed here.\n"
"%s: Fortran file logical unit not allowed here.\n"
"%s: No input file associated to logical unit %d.\n"

Динамические системы

"%s: Argument #%d: Transfer matrix expected.\n"
"%s: Argument #%d: In state space form expected.\n"
"%s: Argument #%d: In continuous time expected.\n"
"%s: Argument #%d: In discrete time expected.\n"
"%s: Argument #%d: SISO expected.\n"
"%s: Argument #%d: Undefined time domain.\n"
"%s: Argument #%d: Invalid state space representation.\n"
"%s: Argument #%d: A system in state space or transfer matrix form expected.\n"

Разное

"%s: No more memory.\n"
"%s: No more memory: %d requested, %d available.\n"
"%s: Non implemented feature.\n"
"%s: Inconsistent addition.\n"
"%s: Inconsistent multiplication.\n"
"%s: The problem is singular.\n"
"%s: Division by 0...\n"
"%s: Invalid index.\n"
"%s: ''%s'' expected instead of ''%s''.\n"
"%s: Recursion limit reached.\n"
"%s: Recursion problems. Sorry...\n"
"%s: Convergence problem...\n"

"%s: Incorrect syntax.\n"
"%s: Incorrect assignment.\n"
"%s: Subroutine ''%s'' not found.\n"
"%s: Bad call to primitive ''%s''.\n"
"%s: Dot cannot be used as modifier for this operator.\n"
"%s: Problem with comparison symbol...\n"
"%s: Missing operator, comma, or semicolon.\n"

Примеры

lang0 = getlanguage();
setlanguage fr;

msg = _("%s: Wrong number of input arguments: %d or %d expected.\n")
error(msprintf(msg, "myfun", 2, 3))

msg = _("%s: Argument #%d: Must be in the set {%s}.\n")
error(msprintf(msg, "myfun", 2, "''r'' ''c''"))

msg = _("%s: Non implemented feature.\n")
error(msprintf(msg, "myfun"))

setlanguage(lang0);

msg = _("%s: Argument #%d: Encoded integer of type (%s) expected.\n")
error(msprintf(msg, "myfun", 1, "uint16"))

msg = _("%s: Argument #%d: The %s handle is no longer valid.\n")
error(msprintf(msg, "myfun", 3, _("graphic")))
--> msg = _("%s: Wrong number of input arguments: %d or %d expected.\n")
 msg  =
 %s : Nombre erroné d'arguments d'entrée : %d ou %d attendus.\n

--> error(msprintf(msg, "myfun", 2, 3))
myfun : Nombre erroné d'arguments d'entrée : 2 ou 3 attendus.


--> msg = _("%s: Argument #%d: Must be in the set {%s}.\n")
 msg  =
 %s : Argument #%d : doit être dans l'ensemble {%s}.\n

--> error(msprintf(msg, "myfun", 2, """r"" ""c"""))
myfun : Argument #2 : doit être dans l'ensemble {"r" "c"}.


--> msg = _("%s: Non implemented feature.\n")
 msg  =
 %s : Fonction non implémentée\n

--> error(msprintf(msg, "myfun"))
myfun : Fonction non implémentée

--> setlanguage(lang0);

--> msg = _("%s: Argument #%d: Encoded integer of type (%s) expected.\n");
--> error(msprintf(msg, "myfun", 1, "uint16"))

myfun: Argument #1: Encoded integer of type (uint16) expected.

--> msg = _("%s: Argument #%d: The %s handle is no longer valid.\n");
--> error(msprintf(msg, "myfun", 3, _("graphic")))

myfun: Argument #3: The graphic handle is no longer valid.

See also

  • error — сообщает об ошибке во время выполнения
  • gettext — indexes or/and translates some indexed english messages
  • msprintf — converts, formats, and writes data in a string
  • printf_conversion — mprintf, msprintf, mfprintf conversion specifications
  • warning — предупреждающие сообщения
  • lasterror — получение последнего записанного сообщения об ошибке

История

ВерсияОписание
6.0.0 Нельзя больше использовать номера ошибок. Теперь есть необязателные (по умолчанию = 10000) и локальные (устанавилвается при каждом вызове error()).
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Feb 14 15:04:47 CET 2019