薄层色谱的错误处理
错误报告
您可能需要在TLC代码检测和报告错误条件。错误检测和报告中最常使用库函数。虽然罕见,也可以在目标文件代码块中遇到错误条件功能mdlCheckParameters
函数并不会检测到一个不可预见的条件。
报告一个错误条件检测在TLC代码中,使用LibBlockReportError
或LibBlockReportFatalError
实用函数。这是使用的一个例子LibBlockReportError
在paramlib.tlc
函数LibBlockParameter
报告的条件不当使用的功能:
%如果类型(param.Value) = =“矩阵”% %退出如果参数是一个真正的矩阵,% %。,有多个行或列。%如果nRows > 1%分配errTxt = % < param”必须访问参数。名称>使用“…“LibBlockMatrixParameter。”%%endif %endif
浏览文件夹中的文件
(开放)更多的使用的例子matlabroot
/ rtw / c /薄层色谱LibBlockReportError
。
从TLC生成错误文件
TLC错误代概述
从TLC生成错误文件,您可以使用%的退出
指令。或者,您可以使用下面描述的库函数的一个调用%的退出
给你。这两种类型的错误
使用错误 |
这些可能是由于不正确的模型。 |
致命的(内部)TLC编码错误 |
这些不能是由于不正确的模型。 |
使用错误
使用错误导致的错误,不正确的模型或属性上定义一个模型。例如,假设你有一个功能块和内联TLC文件为一个特定的D /设备。如果一个模型只包含一个可以复制这个功能,那么一个错误需要生成一个模型包含两个拷贝的功能块。
使用库函数。生成特定使用错误相关块,使用库函数
LibBlockReportError(块,“错误字符串”)
的块
参数是块记录如果不是范围。如果当前块作用域,那么您可以指定块
[]。
生成一般使用错误不相关的一个特定的块,使用
LibReportError(“错误字符串”)
这些库函数前缀字符串金宝app仿真软件编码器误差:
报告错误时您提供的信息。
使用这些函数的例子,请参考gensfun.tlc
为阻止错误和commonsetup.tlc
常见的错误。还有其他文件在TLC源文件夹中使用这些函数
(开放。matlabroot
/ rtw / c /薄层色谱
致命的(内部)TLC编码错误
假设您有一个功能,有一个本地函数可以接受只数值数字。你可能想添加一个断言要求输入只是数值数据。这些断言可以指示致命的编码错误的用户没有一种建筑模型或指定的属性会导致错误发生。
使用库函数。两个可用的库函数
LibBlockReportFatalError (块“致命的编码错误消息”)
在哪里
冒犯块记录(或块
[]
如果块已经范围),
LibReportFatalError(“致命的编码错误消息”)
不阻止特定错误消息。例如,要添加断言代码可以使用
%如果类型(论点)! = Number % < LibBlockReportFatalError(块,“意料之外的参数类型”)> % endif
这些库函数前缀字符串金宝app仿真软件编码器致命的:
您提供的信息和报告错误时显示调用堆栈。
使用这些函数的例子,请参考gensfun.tlc
为阻止错误和commonsetup.tlc
常见的错误。还有其他文件在文件夹中使用这些函数
(开放)。matlabroot
/ rtw / c /薄层色谱
使用%退出。你可以叫%的退出
产生致命的错误消息。然而,MathWorks建议你使用上面描述的库函数之一。
当生成直接与致命错误消息%的退出
,是一种很好的做法给堆栈跟踪的错误消息。这让你看到函数的调用链导致错误。生成一个堆栈跟踪,生成消息使用的格式:
% setcommandswitch“v1”%退出仿真软件编金宝app码器致命:错误的字符串
格式错误消息
如果你想显示格式化,多重线错误消息,创建一个局部变量,其中包含消息文本。例如:
我的消息文本换行% % openfile消息closefile消息
格式化你的错误信息后,使用上面描述的错误报告库函数之一,等LibReportError
当问题发生时,报告你的错误。例如:
% < LibReportError(消息)>
错误报告库函数提供一个错误消息的前缀,如金宝app仿真软件编码器误差:
。
测试错误消息
这是强烈建议您测试您的错误消息发布前新的TLC代码。测试你的错误消息,相关代码复制到一个test.tlc
文件和运行
tlc test.tlc
在MATLAB®提示。
用TLC排除错误消息
确认一个错误报道
确定可能的错误原因
确定可能的方法来解决一个错误
% closefile % selectfile或% flushfile参数必须是一个有效的打开的文件
在% closefile
或% selectfile
或% flushfile
,参数必须是一个有效的文件变量了% openfile
。
%定义不再支持,使用%函数代替金宝app
不支持宏。金宝app你必须重写宏函数或内联代码。
%错误指令:文本
代码包含%的错误
指令生成此消息。它通常表明一些条件,代码无法处理并显示后的文本%的错误
指令。
%退出指令:文本
代码包含%的退出
指令导致此消息。它通常表明一些条件,代码无法处理并显示后的文本%的退出
指令。注意,这个指令使目标语言编译器终止不管-mnumber
命令行选项。
% filescope已经用于该文件
用户试图使用% filescope
指令不止一次在一个文件中。
%跟踪指令:文本
的%的跟踪
指令产生这个错误消息并显示后的文本%的跟踪
指令。只有当跟踪指令- v
在命令行选项(详细模式)出现。请注意,%的跟踪
指令不被认为是错误和不导致目标语言编译器停止处理。
%预警指令:文本
的%的警告
指令产生这个错误消息并显示后的文本%的警告
指令。请注意,%的警告
指令不被认为是错误和不导致目标语言编译器停止处理。
%实现指令必须出现在一个块模板文件和指定%语言和类型必须匹配
一块模板文件被发现,但它并没有包含一个%实现
指令。一个%实现
指令是必需的,以便实现预期的语言和类型的模板文件。看到面向对象的工具生成目标代码为更多的信息。
% switch语句只能有一个%的违约
用户写了%开关
声明与多个%的默认
情况下,像下面的例子:
%开关expr %例1的代码…%打破%默认更多的代码…默认%打破% % %错误甚至更多的代码…%打破% endswitch
一个语言选择必须使用%语言使用生成或GENERATE_TYPE指令之前
使用生成
或GENERATE_TYPE
内置函数,目标语言编译器要求您首先指定所生成的语言。这导致块级目标文件中指定实现相同的语言和类型%的语言
指令。
一个非齐次向量通过GENERATE_FORMATTED_VALUE
内置的GENERATE_FORMATTED_VALUE
只能处理向量有均匀的元素(即向量的所有元素具有相同的类型)。
模棱两可的参考标识符
——必须使用数组下标引用多个范围之一
在重复范围标识符从数据库文件,您必须指定一个索引来消除歧义参考。例如
数据库文件:块{名称“Abc2”参数{名称“foo”值2}}块{名称“Abc3”参数{名称“foo”值3}}TLC文件:% < GETFIELD(块,“名字”)>
在前面的例子中,参考块
模棱两可,因为多个重复的作用域命名块
出现在数据库文件中。使用索引来消除歧义的引用,如:
% < GETFIELD([0],“名字”)>
一个% if语句只能有一个%
用户写了一个%如果
声明与多个其他的%
块,如以下示例:
%如果expr代码…%其他更多的代码…% % %其他错误甚至模式代码…% endif
参数标识符
必须是一个字符串
下面的内置函数期望一个字符串并报告这个错误如果传递的参数是一个字符串。
投 |
GENERATE_FILENAME |
存在 |
GENERATE_FUNCTION_EXISTS |
函数宏指令 |
GENERATE_TYPE |
FILE_EXISTS |
GET_COMMAND _SWITCH |
格式 |
IDNUM |
生成 |
SYSNAME |
参数指令
必须记录
参数% mergerecord
和% copyrecord
必须记录。另外,下面的内置函数的第一个参数必须是一个记录:
ISALIAS
REMOVEFIELD
字段名
ISFIELD
GETFIELD
SETFIELD
参数的薄层色谱MATLAB命令行必须是字符串
是尝试调用MATLAB的目标语言的编译器,但是一些参数被传递并不是字符串。
断言失败
一个表达式的%断言
语句计算为false。
任务范围标识符
只允许在使用+运算符添加成员吗
作业范围必须= +范围变量范围
。
试图定义一个函数标识符现有的变量或函数
不能定义一个函数两次。确保你没有单独的TLC文件中定义相同的功能。
试图除以零
目标语言编译器不允许除零。
坏,无法把这个表达式类型
目标语言编译器不能投这个表达式从当前类型为指定的类型。例如,目标语言编译器无法把一个字符串一个数字,如
x = " 1234 " % %分配分配y =投(Number, x);
坏的目录(目录名
在O):文件名
的- o
选项没有指定一个有效的文件夹。
内装式
是期望表达式的类型类型
,有一个类型的类型
通过一个内置的错误类型的表达式。
不能% undef任何安装在内部的函数或变量
用户不允许未赋值一个TLC内置或变量。例如
% % % undef格式错误
不能转换字符串your_string
许多
不能将字符串转换为一个数字。
改变的价值标识符
从环球套票文件
你有覆盖的值出现在.rtw
文件。
打开错误文件名
目标语言编译器无法打开文件在命令行上指定。
错误写入文件错误
有一个错误在写当前输出流;错误
包含系统特定的错误消息。
错误——流产
这个错误消息是最后一个错误报告。它发生在
错误消息的数量超过了阈值(默认5)错误消息。
处理完成和错误发生。
扩展指令% < >不能嵌套
巢是违法的扩展指令。例如,
% < foo (% < expr >) >
相反,请执行以下操作:
%分配tmp = % < expr > % < foo (tmp) >
扩展指令% < >不能跨越多个行;使用\行结束
扩展指令不能跨越多个行。为了解决这个限制,使用\行连续字符。以下是错误的:
% < CompiledModel.System [Sysidx] .Block [BlkIdx]。名+“Hello”>
相反,使用:
% < CompiledModel.System [Sysidx] .Block [BlkIdx]。名称+ \ "你好" >
额外的参数函数名
内置函数被忽略(警告)
下面的内置函数报告这个警告当太多的参数传递给他们。
投 |
NUMTLCFILES |
存在 |
OUTPUT_LINES |
FILE_EXISTS |
大小 |
格式 |
字符串 |
GENERATE_FILENAME |
STRINGOF |
GENERATE_FUNCTION_EXISTS |
SYSNAME |
IDNUM |
TLCFILES |
ISFINITE |
类型 |
ISINF |
WHITE_SPACE |
ISNAN |
WILL_ROLL |
文件名太长(目录=目录名
、名称=文件名
)
指定的文件名
太长了。的默认限制是256个字符文件名
和1024个字符目录名
,但可以更大的限制,根据平台。
格式
不是一个合法的格式价值
指定的格式是不合法的% realformat
指令。有效的格式字符串“指数”
和“简洁”
。
函数参数不匹配;函数function_name
预计数量
参数
当调用一个函数,过多或过少的参数传递给它。
走到了尽头,函数没有返回值
函数不能声明为无效
或输出
必须返回一个值。如果不需要返回值,函数声明无效
,否则返回一个值。
函数值是不允许的
试图用TLC函数作为一个变量。
标识符标识符
多重定义。第二,成功的定义忽略。
用户试图添加相同的字段记录超过一次,如以下代码。
% createrecord犯错{foo 1;rec {val 2}} % addtorecord犯错foo 2% %的错误
标识符标识符
在% foreach语句中使用已经在范围(警告)
一个的参数% foreach
在进入之前声明不能被定义% foreach
。
非法使用eval(即。,% <…>)
它是非法的使用评价.rtw
文件。也有一些地方测评不允许指令。例如:
%函数% < foo > (a, b, c)无效% % % endfunction错误
指数可能不是负面的
[]中使用的索引表达式必须是一个非负整数。
指标必须是定积分数字
[]中使用的索引表达式必须是一个整数。
无效的句柄
无效的句柄传递给目标语言编译器服务器模式。
无效的标识符范围,领先的字符串string1
和string2相等
必须匹配
例如,在一系列的信号,u1: u10
标识符的第一个参数不匹配在第二的标识符。
无效的标识符范围,下界(绑定
)必须小于上界(绑定
)
例如,在一系列的信号,u1: u10
下界是高于上限。
无效的类型一元操作符
一元操作符- - - - - -
和+
需要数字类型。一元运算符- - - - - -
需要一个整型。一元运算符!
需要一个数字类型。
无效的类型类型
一个无效的类型通过内置函数。
从函数返回一个函数是违法的
一个函数不能从一个函数调用返回值。
指定值标识符
已经存在在这个scope-identifier
;使用%分配改变的价值
你不能使用块加法运算符+添加的值已经显示块的一员。使用%分配
改变现有的价值的价值。这个例子会产生这个错误:
%分配x =黑色{1;b 2} %分配分配x = x + = 3%
取代它可使用:
x %分配。一个= 3
没有% case语句(s),声明忽略
出现在一个语句%开关
声明,但之前%的情况
语句将被忽略,就像下面的代码:
x = 2% % %开关expr %分配这个语句将被忽略% %打破% endswitch案例1代码
只有双和字符数组可以转换MATLAB薄层色谱。这可能发生,如果MATLAB函数没有返回值(见% matlab)
只有双和字符数组可以从MATLAB转换到目标语言的编译器。这个错误可能发生如果MATLAB函数没有返回值(见% matlab
)。例如,
%分配一个=函数宏指令(“int8”, 3) % matlab disp (a)
从TLC只能填报一个输出
是尝试从MATLAB接收多个输出版本的目标语言的编译器。
只有字符串的长度是1可以被分配使用[]符号
右边的一个字符串赋值使用[]操作符必须是一个字符串的长度是1。你可以使用这个符号只替换一个字符。
只有字符串或细胞可以使用字符串作为参数查询和ExecString
一个细胞包含nonstring数据作为第三个参数传递给查询
或ExecString
在服务器模式。
只有向量长度相同的现有的矢量值可以使用[]符号分配
在[]符号代替矩阵的一行,行必须是一个现有的行向量长度相同的。
输出文件标识符
开通与% openfile没有关闭
输出文件了% openfile
必须关闭% closefile
。的
变量中指定的名称吗标识符
% openfile
指令。
请注意
这也可能出现语法错误是出现在一个代码之间的部分openfile
和closefile
,或者如果你想指定的输出类型的函数无效
或输出
一个变量。
标识符范围、不能重复,重复值
你不能重复一系列,标识符范围,或重复值。这可以防止这样的事情[1 @2@3]
。
字符串不能修改设置命令行开关”- - -开关
”
开关
”% setcommandswitch
不能识别指定的开关,或不能修改它(例如,- r
不能修改)。
字符串
不是一个公认的用户定义属性处理吗
TLC服务器上执行的查询模式处理正在寻找一个未定义的属性。
语法错误
表示行包含一个语法错误,有关语法的更多信息,请参阅目标语言编译器指令。
%打破指令只能出现在一个foreach百分比,%,%,% switch语句
的%打破
只在一个指令可以使用% foreach
,%的
,%卷
,或%开关
声明。
%和%默认指令只能在% switch语句中使用
一个%的情况
或%的默认
指令只能出现在一个%开关
声明。
%继续指令只能出现在一个foreach百分比,%,%或声明
的%继续
只在一个指令可以使用% foreach
,%的
,或%卷
声明。
% foreach语句预计一个常数数值参数
的参数% foreach
必须是数字类型。例如:
% foreach指数= (1 2 3 4)……% endforeach
% foreach
不能接受一个向量作为输入。
%如果声明预计一个常数数值参数
的参数%如果
声明必须是数字类型。例如,
%如果(1 2 3)……% endif
%如果
不能接受一个向量作为输入。
%实现指令预计一个字符串或字符串向量作为语言的列表
您可以使用%实现
指令指定一个字符串的语言实现,或表明,它实现了多种语言通过使用一个向量的字符串。你不能指定其他参数类型%实现
指令。
%实现指令指定的类型类型
在哪里类型
预计
中指定的类型%实现
指令必须精确匹配块或在指定的类型GENERATE_TYPE
指令。如果你想指定块接受多个输入类型,使用%实现*
指令,如
*“C”% % %实现我接受任何类型并生成C代码
%实现语言生成的语言目前不匹配(语言
)
中指定的语言或语言%实现
指令必须精确匹配%的语言
指令。
%返回语句只能出现在身体的一个函数
一个%返回
语句只能在体内的一个函数。
= =和! =运算符只能用于比较相同类型的值
= =和! =操作符参数必须是相同的类型。您可以使用把()
内置函数改变成相同的类型。
% openfile的参数必须是一个有效的字符串
当你打开一个输出文件,指定的文件的名称必须是一个有效的字符串。
%的参数必须是一个有效范围
的参数%,
必须是一个有效的标识符范围。例如,
%分配x = 1%,…% endwith
在这段代码中,%,
声明参数是一个数量和产生此错误消息。
[]操作的参数必须是一个重复范围的象征,一个向量或矩阵
当您使用[]操作符索引,左边的表达式的括号必须是一个向量,矩阵,字符串,数值常数,或重复范围标识符。当你使用数组索引一个标量,不断自动标量扩展和标量返回的值。例如,
% openfile x %分配y = x [0]
这个例子会导致这个错误,因为x
是一个文件,索引是无效的。
% addincludepath的参数必须是一个有效的字符串
的参数% addincludepath
必须是一个字符串。
%的参数包括必须是一个有效的字符串
输入文件控制指令的参数必须是一个有效的字符串用双引号中给出的文件名。
开始指令必须在同一个文件中相应的指令。
这些目标语言编译器开始
指令必须出现在同一个文件中相应的结束
指令:%的功能
,%开关
,% foreach
,%卷
,%的
。把构造完全在一个目标语言编译程序的源文件。
的开始
这条线没有指令匹配结束
指令
block-scoped指令,产生这个错误是否匹配结束
指令是失踪。这个错误可能发生下列block-scoped目标语言编译器指令。
开始的指令 | 结束指令 | 描述 |
---|---|---|
%如果 |
% endif |
条件包含 |
%的 |
% endfor |
循环 |
% foreach |
% endforeach |
循环 |
%卷 |
% endroll |
循环滚动 |
%, |
% endwith |
范围的指令 |
%开关 |
% endswitch |
开关指令 |
%的功能 |
% endfunction |
函数声明指令 |
{ |
} |
创造记录 |
打开的错误报告的范围和没有匹配结束
范围。
请注意
嵌套域父母之前必须关闭的范围。包括一个失败结束
为一个嵌套范围经常引起这个错误,
%如果块。Name = =“罪3”% foreach idx =块。宽度% endif % %错误报道,% foreach没有终止
matlab构造%function_name
(…)构造在独立的薄层色谱是非法的
你不能从独立的TLC调用MATLAB。
函数宏指令()函数可以接受唯一的二维数组MATLAB,而不是数量维度
返回值从MATLAB最多可以有两个维度。
函数宏指令()函数可以接受向量的数字或字符串只有当调用MATLAB
向量通过MATLAB可以是数字或字符串。看到函数宏指令功能。
函数宏指令()函数需要调用函数的名称
函数宏指令
需要一个函数来调用。这个错误只出现在MATLAB。
%卷最后的参数必须是一个有效的块范围
当你使用%卷
之前,最后的论点(额外指定的参数)必须是一个有效的块范围。看到%卷这个命令的描述。
的第一个参数?:操作员必须是一个布尔表达式
的吗?:
操作员必须有一个布尔表达式作为其第一个操作数。
第一个参数来生成或GENERATE_TYPE必须是一个有效范围
当你打电话生成
或GENERATE_TYPE
,第一个参数必须是一个有效范围。看到生成和GENERATE_TYPE功能的更多信息和示例。
这个函数的名字
至少需要数量
参数
用户通过一个函数的参数太少,就像下面的代码:
%函数foo (a, b, c) %返回a + b + c % endfunction % < foo(1、2) > % %错误
生成函数至少需要两个参数
当你打电话给生成
内置函数,前两个参数必须是块和要调用的函数的名称。
GENERATE_TYPE函数至少需要3个参数
当你打电话给GENERATE_TYPE
内置函数,第一个三个参数必须,要调用的函数的名称和类型。
ISINF (), ISNAN (), ISFINITE(),(),图像放大()函数期望一个真实的或复杂的有价值的参数
这些函数的期望真正的
或复杂的值作为输入参数。
语言实现在一块模板文件不能被改变
你不能改变语言使用%的语言
在一块模板文件指令。
语言的实施改变了古老的语言
来新语言
(警告)
语言在中游,因为实施不应改变生成
函数调用之前出现%的语言
指令可能会导致生成
加载之前的语言功能。只有一个语言指令应该出现在一个给定的文件。
左边的。操作员必须是一个有效范围标识符
当你使用。
运营商的左边。
操作员必须都会有效范围内的标识符。例如:
%分配x = y = x.y分配1%
在这段代码中,参考x.y
产生这个错误消息,因为x
不是定义为一个范围。
左边的任务必须由一个简单的表达式。[],标识符
非法的左手边的任务。
指定的列数(specified-columns
)不符合实际列的行数(实际列
)
当你指定一个目标语言编译器矩阵,指定的列数必须与实际数量的列矩阵。例如,
%分配垫=矩阵(2,1)[[1,2];[2、3]]
在这种情况下,矩阵的列数的声明(1)不匹配的列数的矩阵(2)。要么改变矩阵的列数,或改变矩阵的声明。
指定的行数(specified-rows
)不符合实际的矩阵的行数(实际行
)
当你指定一个目标语言编译器矩阵,必须匹配实际的行数矩阵的行数。例如,
%分配垫=矩阵(1,2)[[1,2];[2、3]]
在这种情况下,声明的矩阵的行数(1)不匹配的行数的矩阵(2)。改变矩阵的行数或改变矩阵宣言。
的operator_name
运营商只适用于布尔参数
的& &
和| |
运营商只在布尔值工作。
的operator_name
运营商只适用于积分参数
的&
,^
,|
,< <
,> >
和%
运营商的工作数量。
的operator_name
运营商只适用于数值参数
以下操作符的参数都必须是数字或真实:<
,< =
,>
,> =
,- - - - - -
,*
,/
。这个错误使用时也会发生+
一元运算符。此外,格式
内置函数将一个数字或真正的论点。
RollHeader函数的返回值必须是一个字符串
当你使用%卷
,RollHeader ()
函数中指定Roller.tlc
必须返回一个字符串值。看到%卷为一个完整的讨论%卷
构造。
%辊辊参数必须是一个非空的向量的数量或范围
当你使用%卷
,卷
向量不能是空的,必须包含数字或数字的范围。看到%卷为一个完整的讨论%卷
构造。
第二个值必须大于第一个值范围
例如,在一个范围,1:10
下界是高于上限。
指定的索引(指数
)的范围0 -的元素数量- 1
这个错误发生在你指数nonscalar以外的变量。例如:
%分配x =(1 2 3) %分配y = x [3]
这个例子会导致这个错误。记住,在目标语言编译器,数组索引从0开始,到元素的数量- 1。
STRINGOF内置函数期望一个向量的数字作为其参数
的STRINGOF
函数将一个向量的数字。函数将每个数字视为一个有效字符的ASCII码值。
SYSNAME内置函数期望的输入字符串形式xxx
/多
的SYSNAME
函数将一个字符串的形式xxx
/多
因为它出现在.rtw
文件,并返回一个向量的两个字符串,xxx
和多
。如果这种格式输入参数不匹配,SYSNAME
返回这个错误。
的阈值%辊声明必须是一个数字
当你使用%卷
指定的卷阈值,必须是一个数字。看到%卷为一个完整的讨论%卷
构造。
的使用功能
被弃用,会在未来的版本中不支持的。金宝app看到TLC手册选择。
的%定义
和%生成
指令不推荐,因为他们被取代。
WILL_ROLL内建函数期望向量和一个整数范围阈值
的WILL_ROLL
函数需要两个参数引用的消息。
没有更多的自由上下文。使用薄层色谱(“关闭”,处理)释放一个上下文
全局上下文表已经填满了TLC服务器模式时使用。
没有生成类型与给定的块
指定的范围生成
必须包括一个类型
参数表明应该使用哪个模板文件来生成代码指定范围。例如:
%分配范围=块{名称“foo”} % <生成(范围,“输出”)>
这个例子中产生的错误消息,因为范围不包括参数类型
。看到生成和GENERATE_TYPE功能的更多信息和示例。
这个任务将覆盖的一对identifier-value RTW文件。为了避免这种错误要么资格左边,或选择另一个标识符。
用户试图修改一个字段的记录%,
块不合格的左边,就像这个例子:
与foo % createrecord foo{字段1}% %分配字段= 2% % % endwith错误
相反,使用
与foo % createrecord foo{字段1}% %分配foo。场= 2% endwith
薄层色谱已经泄露数量
符号。你可能已经创建了一个循环记录。如果不是这样,请报告此MathWorks泄漏。
有内存泄漏而运行。这是最常见的原因有循环记录。
无法找到标识符
在scope-identifier
范围
给定的标识符是没有找到指定的范围中。例如,
x %分配范围= ascope{5} %分配y = scope.y
在这段代码中,参考scope.y
产生这个错误消息。
无法打开%包含文件文件名
该文件包含在一个%包括
指令不存在的道路上。移动文件位置在当前路径,或使用-我
命令行选项或% addincludepath
指令指定包含文件的文件夹。
无法打开模板文件文件名
从生成或GENERATE_TYPE
你指定的生成
但给定的文件名不存在目标语言编译器路径。你可以
添加文件到一个文件夹路径。
使用
% generatefile
指令指定的另一个文件名这个块类型的道路上。添加这个文件的文件夹搜索路径使用
-我
命令行选项或% addincludepath
指令。
无法打开输出文件文件名
指定输出文件无法打开。无效的文件名指定或文件是只读的。
未定义的标识符identifier_name
这个表达式中指定的标识符是未定义的。
未知类型类型
在铸造表达式
当你打电话给投
内置函数,类型必须是一个有效的类型目标语言值类型表。
无法识别的命令行开关通过字符串:开关
你查询当前状态开关,但并不认可指定的开关。
未识别的指令directive-name
见过
一个非法%
指令是遇到了。有效的指示如下所示。
% addincludepath |
% addtorecord |
%断言 |
%分配 |
%打破= |
%的情况 |
% closefile |
%继续 |
% copyrecord |
% createrecord |
%的默认 |
%定义 |
其他的% |
% elseif |
% endbody |
% endfor |
% endforeach |
% endfunction |
% endif |
% endroll |
% endswitch |
% endwith |
%的错误 |
%的退出 |
% filescope |
%的 |
% foreach |
%的功能 |
%生成 |
% generatefile |
%如果 |
%实现 |
%包括 |
%的语言 |
% matlab |
% mergerecord |
% openfile |
% realformat |
%返回 |
%卷 |
% selectfile |
% setcommandswitch |
%开关 |
%的跟踪 |
% undef |
%的警告 |
%, |
未识别的类型输出类型
对于功能
函数类型修饰符输出
或无效
。对于不产生输出的函数,默认没有类型修饰符表示函数不应该产生输出。
无端接的多行注释。
一个多行注释(即。,/%%/)does not have a terminator, as in the following code:
/ %我的评论%分配分配y = x * 7 x = 2%
无端接的字符串
一个字符串必须关闭结束之前一个扩展指令或一行的结束。
用法:tlc[选项]文件
一个命令行问题发生。错误消息包含一个可用的选项列表。
使用功能
产生的性能影响,请参见TLC手册可能的解决方法。
的% undef
和扩展(例如,% < expr >
)功能会降低性能。
的价值类型
类型不能相比
指定的值
不能相比。类型
的值specified_type
类型不能扩展
指定的类型不能使用扩展指令。文件和范围无法扩大。这个错误也可能发生当你扩大一个不带任何参数的函数。如果你使用
% <功能>
与所需的参数调用它。
特殊类型的值,宏扩展、功能、文件,不能转化为完整的标识符,和索引MATLAB变量
值的类型中列出的信息不能转化为MATLAB变量。
添加一个缓冲流时,变量必须是一个字符串
您可以指定附加
选择一个缓冲流目前只有如果变量是一个字符串。不使用附加
选项如果变量不存在或不是一个字符串。这个例子会产生这个错误。
%分配openfile x x = 1%,”“% closefile x
TLC函数库错误消息
TLC函数库中的函数可以生成许多没有被记录的错误消息。这些信息足够自描述,以便他们不需要额外的解释。然而,如果你遇到一个错误消息,并没有提供足够的描述来解决你的问题,我们的技术支持人员联系。金宝app