日本語プログラムの例 |
変数名や関数名を日本語で付けることもできます。
( ) [ ] + - などの記号を全角で記述することもできます。
たとえば、コード生成例で引用した prime.c を次のように書くこともできます。
ソースコード
1: #include <stdio.h> 2: #define 上限数 100 3: int main() 4: { 5: int 発見数 = 0; 6: int 調査対象 = 2; 7: while ( 発見数 < 上限数 ) 8: { int 除数 = 2; 9: while ( 1 ) 10: { if ( 除数 >= 調査対象 ) // 発見 11: { printf( "%d ", 調査対象 ); 12: 発見数++; 13: break; 14: } 15: if ( 調査対象 % 除数 == 0 ) // 割り切れたら素数ではない 16: break; 17: 除数++; 18: } 19: 調査対象++; 20: } 21: printf( "\n" ); 22: return( 0 ); 23: }コンパイル結果
この場合、アセンブラ コードにも日本語の名前が出力されます。
public _main _main proc near ; line 3 push bp mov bp,sp add sp,-2 push si ; 調査対象 push di ; 除数 発見数$ equ [bp-2] ; size=2 mov word ptr [発見数$],0h ; line 5 mov si,2h ; line 6 jmp ent_1 ; line 7 top_1: mov di,2h ; line 8 jmp ent_2 ; line 9 top_2: mov ax,si ; line 15 cwd idiv di cmp dx,0h je bot_2 inc di ; line 17 ent_2: cmp di,si ; line 10 jl top_2 push si ; line 11 mov ax,offset a1? push ax call near ptr _printf add sp,4 inc word ptr [発見数$] ; line 12 bot_2: inc si ; line 19 ent_1: cmp word ptr [発見数$],64h ; line 7 jl top_1 mov ax,offset a2? ; line 21 push ax call near ptr _printf add sp,2 xor ax,ax ; line 22 pop di pop si mov sp,bp pop bp ret _main endp