问题标签 [subroutine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
batch-file - 有没有办法将百分比(%)传递给常规?
DOS批处理文件
输入文件有三个记录:
脚本如下:
输出:
角色 % 不见了!你知道为什么吗?
perl - 如何将哈希传递给子例程?
需要帮助弄清楚如何做到这一点。我的代码:
perl - 显示当前 Perl 子程序的 Vim 插件
我正在尝试制作一个 Vim 插件,该插件将在加载时拆分窗口并模拟终端顶部的信息栏。我已经让它工作了,但我认为我已经达到了我对 Vim 语法知识的限制,或者我的代码中存在逻辑问题。
期望的效果是从我在活动缓冲区中的当前位置开始反向搜索 Perl 子例程的任何声明,并在顶部缓冲区中显示该行。Ctrl当我用-切换缓冲区时,我还试图让它跳过该缓冲区R。到目前为止,我的尝试可以从嵌套 if 语句的混乱中看出。
无论如何,这是代码。我将非常感谢任何人的反馈。
类似于问题VIM: display custom reference bar on top of window和 Vim Tips wiki page Show current function name in C programs。
assembly - 在子例程中使用 TRAP 例程?- LC3 组装
所以,我已经完成了一个汇编程序,它要求输入一个字符,读取它,回显它,重复四次,然后在一个连续的字符串中打印出这些字符。然后我想尝试使用子程序(我们还没有在课堂上学习过),所以我制作了以下子程序来将换行符打印到控制台:
它像这样被“调用”:
运行此程序后,我注意到一些奇怪的事情,程序似乎在第一次调用PRINT_NEWLINE
. 然后我意识到 TRAP 保存了下一条指令的地址,在这种情况下是RET
, in R7
,用于子程序链接的寄存器。这将覆盖由 保存的R7
地址JSR
。所以它似乎停止的原因是在TRAP
例程完成后,它会加载我的RET
指令。实际上,由于TRAP
,将 pc 计数器更改为自身。有点像无限循环。
这一切都很好,我明白发生了什么,但是有没有办法可以TRAP
在我的子例程中使用系统例程,同时仍然使用系统JSR
指令?
当然,我可以在JSR PRINT_NEWLINE
调用之后将指令的地址手动存储到不同的寄存器中,然后在我的PRINT_NEWLINE
子程序结束时,存储JMP
到该寄存器中的地址。
但是,这对我来说似乎是错误的,我是一名程序员,因此我很懒惰,宁愿只是享受别人的劳动成果并使用 and 的JSR
组合RET
。
那么是否可以TRAP
在子例程中调用例程并仍然用于RET
从该子例程“返回”?如何做到这一点?
谢谢!
arrays - -1,0,1 在子例程中隐含使用时如何帮助排序功能?
我在使用子例程时遇到了一些问题,即用于对数字数组进行排序的sort函数。我知道如果你单独使用 sort 函数,它会使用 ASCII 格式进行排序,因为本书描述了这个和那个排序不是所需的顺序。我知道并了解使用<=>
比较值返回的内容,甚至被引入cmp
字符串(尽管我还没有使用它)。
我具体不明白的是它如何对它们进行数字排序 - 实际过程。我了解返回的内容,但本书只是说它返回 -1、0 和 1,而不是数字最终如何具体排序为1 8 24 72 144 288
.
我的例子:
我完全理解的例子。这很有意义,但我认为这主要是由于编码:
如果有人可以澄清,非常感谢。
perl - 打印出匿名子程序的代码
我目前在一个非常复杂的 Perl 架构中工作,我想创建一些调试工具。由于很多行为都涉及匿名子例程,因此我想分析一些行为,而我所要做的就是对子例程的引用。
简而言之,有没有办法打印子例程引用的代码(因为 Perl 被解释它可能仍然可用?)?
arrays - 将两个或多个数组传递给 Perl 子例程
我在子例程中传递和读取参数时遇到问题,该子例程应该有两个数组。
我从网上看到并尝试了几个例子,但没有一个对我有用。
perl - 如何在 Perl 中访问函数参数?
在 C++ 中,我会做这样的事情:
在 PHP 中,我会这样做:
我如何在 Perl 中做到这一点?
function - 回调函数:它们在计算机编程语言中是什么?
我在 Win32 等低级 API 中看到了很多回调函数。但是我对回调函数或回调子程序是什么感到困惑。c# 中的事件是否被视为回调函数?
perl - 为什么我没有收到来自 Perl 的警告?
考虑这两个用例:
和
第一个会产生Variable will not stay shared
警告,而第二个不会。似乎在这两种情况下都没有共享变量。为什么在第二种情况下没有任何警告?