Scilab 错误 4 未定义变量 <function_name>
Scilab Error 4 Undefined variable <function_name>
大家好,我是 Scilab 的新手,
我正在做一个脚本,我通过菜单发送给用户,我正在为每个子菜单制作一个功能。
我读到函数可以有 0 个输入参数,但它必须至少有 1 个输出参数。
据此我写了这个
//execution file landing menu
option='1'
while (option~=0)
clc
mprintf('1 - First Sub-menu')
mprintf('2 - Second Sub-menu')
option=input('Select the option: ', 's')
select option
case '1' then
result=sub_one(),
case '2' then
result=sub_two(),
else
disp('Invalid Option!!!')
end
end
//Function sub_one
function result=sub_one()
option='1'
while (option~=0)
clc
mprintf('1 - Do stuff')
mprintf('2 - Do other stuff')
option=input('Select the option: ', 's')
select option
case '1' then
result=do_stuff(),
case '2' then
result=do_other_stuff(),
else
disp('Invalid Option!!!')
end
end
result=0
endfunction
而且我总是收到错误
result=sub_one(),
!--error 4
Undefined variable: sub_one
at line xx of exec file called by :
exec('dir\dir\dir\file.sce', -1)
这让我很烦
然后是我?
Scilab 从上到下解析文件,因此当它位于文件顶部的主要部分时,sub_one
尚不存在。如果您调换顺序,它将起作用。
如果您想在文件中保留订单,您还可以执行以下操作:
// Define some main function
function main()
disp('hello from main')
sub_one()
endfunction
// Define some sub function
function sub_one()
disp('hello from sub_one')
endfunction
// call function main to execute
main()
大家好,我是 Scilab 的新手, 我正在做一个脚本,我通过菜单发送给用户,我正在为每个子菜单制作一个功能。 我读到函数可以有 0 个输入参数,但它必须至少有 1 个输出参数。 据此我写了这个
//execution file landing menu
option='1'
while (option~=0)
clc
mprintf('1 - First Sub-menu')
mprintf('2 - Second Sub-menu')
option=input('Select the option: ', 's')
select option
case '1' then
result=sub_one(),
case '2' then
result=sub_two(),
else
disp('Invalid Option!!!')
end
end
//Function sub_one
function result=sub_one()
option='1'
while (option~=0)
clc
mprintf('1 - Do stuff')
mprintf('2 - Do other stuff')
option=input('Select the option: ', 's')
select option
case '1' then
result=do_stuff(),
case '2' then
result=do_other_stuff(),
else
disp('Invalid Option!!!')
end
end
result=0
endfunction
而且我总是收到错误
result=sub_one(),
!--error 4
Undefined variable: sub_one
at line xx of exec file called by :
exec('dir\dir\dir\file.sce', -1)
这让我很烦
然后是我?
Scilab 从上到下解析文件,因此当它位于文件顶部的主要部分时,sub_one
尚不存在。如果您调换顺序,它将起作用。
如果您想在文件中保留订单,您还可以执行以下操作:
// Define some main function
function main()
disp('hello from main')
sub_one()
endfunction
// Define some sub function
function sub_one()
disp('hello from sub_one')
endfunction
// call function main to execute
main()