14.1.2端子输入

Octave有三个函数,可以方便地提示用户输入。这个inputmenu函数通常用于管理与用户的交互式对话框keyboard函数通常用于进行简单的调试。

 
:ans= input (prompt)
:ans= input (prompts

打印prompt并等待用户输入。

例如

input ("Pick a number, any number! ")

打印提示

Pick a number, any number!

并且等待用户输入值。用户输入的字符串是作为表达式计算的,因此它可以是文字常量、变量名或任何其他有效的Octave代码。

返回参数的数量、大小和类取决于输入的表达式。

如果您只对获取文本字符串值感兴趣,可以调用input带有字符串"s"作为第二个参数。这个命令告诉Octave直接返回用户输入的字符串,而不首先对其求值。

因为可能有输出等待分页器显示,所以总是调用是个好主意fflush (stdout)调用之前input。这将确保在出现提示之前,所有挂起的输出都被写入屏幕。

详见: yes_or_no,kbhit,pause,menu,listdlg.

广告
 
:choice= menu (title,opt1, …)
:choice= menu (title, {opt1, …})

显示带标题的菜单title和参数opt1,…,并等待用户输入。

如果GUI正在运行,则使用以图形方式显示菜单listdlg。否则,标题和菜单参数将打印在屏幕上。

title是字符串,并且参数可以作为单独的字符串或字符串的元胞数组输入。

返回值choice是用户从1开始计数所选参数的编号。如果用户中止对话框或做出无效选择,则返回0。

此函数对交互式程序非常有用。可以传递的参数数量没有限制,但在一个屏幕上呈现的参数可能会令人困惑。

详见: input,listdlg.

广告
 
:ans= yes_or_no ("prompt")

向用户提问“是”或“否”。

如果答案是肯定的,则返回逻辑true;如果答案是否定的,则为false。

有一个参数,prompt,这是提问时要显示的字符串。prompt应该在一个空间中结束;yes-or-no添加了字符串'(是或否)'。用户必须用确认答案RET并且可以对其进行编辑,直到其被确认为止。

详见: input.

广告

对于input,正常的命令行历史记录和编辑函数在提示下可用。

Octave还有一个函数,可以从键盘上获取单个字符,而无需用户输入acariage return。

 
:c= kbhit ()
:c= kbhit 1.

从键盘上读取单个击键。

如果使用参数(通常为1)调用,请不要等待按键,并立即返回键盘输入缓冲区中的下一个按键,如果没有可用的按键,则返回空键(“”)。

例如

c = kbhit ();

将设置c在键盘上输入的下一个字符。

c = kbhit (1);

与上面的示例相同,但不等待按键,如果没有可用的键,则返回空字符串。

详见: input,pause.

广告

版权所有 © 2024-2025 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号-2