leftbehind.j
来自「gcc的组建」· J 代码 · 共 65 行
J
65 行
;; LeftBehind.j - contrived test to see how japhar reacts to; stuff left on the stack after a method returns..class public LeftBehind.super java/lang/Object.method public static test()I .limit stack 10 ; up to 10 items can be pushed ; push some ints. bipush 1 bipush 2 bipush 3 bipush 4 bipush 5 ; then push some strings. ldc "6th item" ldc "7th item" bipush 5 ; now push our return value bipush 9 ireturn.end method.method public static main([Ljava/lang/String;)V .limit stack 3 ; up to three items can be pushed ; we push a value onto the stack, and ; then check to see that only one item (the return ; value from the test() method) is on the stack on top ; of it. bipush 8 invokestatic LeftBehind/test()I pop ; get rid of the return value bipush 8 isub ifeq passfail: ; push System.out onto the stack getstatic java/lang/System/out Ljava/io/PrintStream; ldc "FAILED:" invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V bipush 0 invokestatic java/lang/System/exit(I)Vpass: ; push System.out onto the stack getstatic java/lang/System/out Ljava/io/PrintStream; ldc "PASSED:" invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V bipush 0 invokestatic java/lang/System/exit(I)V.end method
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?