Таблица ошибок
список сообщений главных стандартных ошибок
Содержание
Описание
Эта страница даёт неполный список главных стандартных предопределённых сообщений об ошибках, исползуемых в самом 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 — индексирует или/и переводит некоторые индексированные сообщения на английском языке
- msprintf — converts, formats, and writes data in a string
- printf_conversion — mprintf, msprintf, mfprintf C-format specifications
- warning — предупреждающие сообщения
- lasterror — получение последнего записанного сообщения об ошибке
История
Версия | Описание |
6.0.0 | Нельзя больше использовать номера ошибок. Теперь есть необязателные (по умолчанию = 10000) и локальные (устанавилвается при каждом вызове error()). |
Report an issue | ||
<< error | Управление ошибками | lasterror >> |