問題タブ [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バッチファイル
入力ファイルには 3 つのレコードがあります。
スクリプトは次のとおりです。
出力:
文字 % がなくなりました! 理由はわかりますか?
perl - ハッシュをサブルーチンに渡すにはどうすればよいですか?
これを行う方法を理解するのに助けが必要です。私のコード:
perl - 現在の Perl サブルーチンを表示する Vim プラグイン
ロード時にウィンドウを分割し、端末の上部にある情報バーをシミュレートする Vim プラグインを作成しようとしています。ある程度は動いていますが、Vim 構文の知識が限界に達したか、コードに論理的な問題があると思います。
望ましい効果は、アクティブ バッファ内の現在の位置から Perl サブルーチンの宣言を逆方向に検索し、その行を一番上のバッファに表示することです。Ctrl-でバッファを切り替えるときに、そのバッファをスキップさせようとしていRます。これまでの私の試みは、ネストされた if ステートメントの混乱に見られます。
とにかく、ここにコードがあります。誰からのフィードバックもお待ちしております。
質問VIM: display custom reference bar on top of windowおよび Vim Tips wiki ページShow current function name in C programs に似ています。
assembly - サブルーチン内からTRAPルーチンを使用しますか?-LC3アセンブリ
これで、文字を要求し、それを読み取り、エコーし、それを4回繰り返してから、それらの文字を連続した文字列に出力するアセンブリプログラムを終了しました。次に、サブルーチン(クラスではまだ学習していません)を試してみたかったので、次のサブルーチンを作成して、コンソールに改行文字を出力しました。
次のように「呼び出され」ます。
これを実行した後、私は何か奇妙なことに気づきました。プログラムは、への最初の呼び出しの後に停止したように見えましたPRINT_NEWLINE
。次に、TRAPが次の命令のアドレスを保存することに気付きました。この場合はRET
、R7
サブルーチンのリンクに使用されるレジスタです。これにより、によって保存されたアドレスが上書きさR7
れJSR
ます。したがって、停止しているように見える理由は、TRAP
ルーチンが終了した後、それが私のRET
命令をロードするためです。これは、実際にはTRAP
、PCカウンターをそれ自体に変更するためです。無限ループのようなものです。
それはすべて素晴らしいことであり、何が起こっているのかは理解していますが、システム命令TRAP
を使用しながら、サブルーチン内でシステムルーチンを使用できる方法はありますか?JSR
もちろん、呼び出し後の命令のアドレスを別のレジスタに手動で格納し、サブルーチンJSR PRINT_NEWLINE
の最後にそのレジスタのアドレスに格納することもできます。PRINT_NEWLINE
JMP
しかし、それは私には間違っているように思えます。私はプログラマーなので、怠け者であり、他の人の労力の成果を楽しんで、との組み合わせを使用したいと思っていJSR
ますRET
。
TRAP
では、サブルーチン内のルーチンを呼び出してもRET
、そのサブルーチンから「戻る」ために使用することは可能ですか?これをどのように達成しますか?
ありがとう!
arrays - -1,0,1は、サブルーチンで暗黙的に使用される場合、どのようにソート関数を支援しますか?
サブルーチン、つまり数値の配列をソートするために使用されているソート関数に問題があります。ソート関数を単独で使用する場合は、ASCII形式を使用してソートします。これは、本で説明されており、希望する順序ではないためです。私は、文字列<=>
に導入されていても、値を比較するために使用することで何が返されるかを認識しており、理解しcmp
ています(まだ使用していませんが)。
私が具体的に理解していないのは、それがどのようにそれらを数値的に分類するか、つまり実際のプロセスです。何が返されるかは理解できますが、本には-1、0、1が返されると書かれているだけで、最終的に数値がにソートされる方法はわかりません1 8 24 72 144 288
。
私の例:
私が完全に理解している例。それは完全に理にかなっていますが、それは主にコーディングによるものだと思います。
誰かが明確にすることができれば大いに感謝します。
perl - 匿名サブルーチンのコードを印刷する
私は現在、非常に複雑なPerlアーキテクチャで作業しており、いくつかのデバッグツールを作成したいと考えています。多くの動作には匿名のサブルーチンが含まれるため、動作の一部を分析したいと思います。操作する必要があるのは、サブルーチンへの参照だけです。
要するに、サブルーチン参照のコードを印刷する方法はありますか(Perlは解釈されるので、まだ利用できる可能性がありますか?)?
arrays - 2 つ以上の配列を Perl サブルーチンに渡す
2 つの配列を持つと予想されるサブルーチン内で引数の受け渡しと読み取りに問題があります。
Web からいくつかの例を見て試してみましたが、どれもうまくいきませんでした。
perl - Perlの関数パラメーターにどのようにアクセスしますか?
C ++では、次のようにします。
PHPでは、次のようにします。
Perlでそれを行うにはどうすればよいですか?
function - コールバック関数:コンピュータープログラミング言語では何ですか?
Win32のような低レベルのAPIには多くのコールバック関数があります。しかし、私はコールバック関数またはコールバックサブルーチンが何であるかについて混乱しています。C#のイベントはコールバック関数と見なされますか?
perl - Perlから警告が表示されないのはなぜですか?
次の2つのユースケースを検討してください。
と
1つVariable will not stay shared
目は警告を生成しますが、2つ目は警告を生成しません。どちらの場合も変数は共有されていないようです。2番目のケースで警告が表示されないのはなぜですか?