S-JIS[2005-01-16/2017-01-29] 変更履歴

プログラミング言語比較

プログラム言語って、根本的(論理的)にやりたいこと・やれることはだいたい同じなんですよね。
そういう、「意味は似てるだろう」というのをまとめてみます。
「BASICのinstrに当たるのはJavaでは何だっけ?」ということが多いので(苦笑)

  • MS-DOS [2006-02-26/2006-07-07]
  • UNIX [2006-02-26/2006-07-06]
  • MSX-BASIC [2005-01-16/2006-07-26]
  • VisualBasic for Application [2005-01-16/2007-04-16]
  • VBScript [2007-04-06]
  • VB.NET [2006-04-15/2007-03-22]
  • PASCAL [2005-02-10]
  • PL/I [2005-01-16]
  • Perl [2005-03-12/2006-07-11]
  • C言語(gcc, WIN32) [2005-01-16/2007-04-16]
  • Visual C++(MFC) [2005-01-16/2007-04-16]
  • Java [2005-01-16/2007-05-31]
  • JavaScript [2006-01-08/2007-04-16]
  • C# [2006-03-04/2007-03-29]
  • SQL(Oracle[2005-02-07/2006-07-08]
  • PL/SQL(Oracle) [2005-02-27/2006-07-08]
  • Common Lisp [2005-04-04]

以下の表で、チェックボックスにチェックを付けて「絞り込み」を押すと、その列だけ表示されます。
microsoftDOM(とXML)を使うのは やめたので、ほとんどのブラウザーで動くはずです。[2011-12-10]



[2005-01-16/2008-05-23]

概要

 
当ページでの対象 Windows XP 適当 MSX Excel2003 Windows XP   UNIX IBM汎用機 UNIX X68000(gcc) Windows Windows・UNIX Internet Explorer   Oracle Oracle  
使用可能 半角文字 半角文字 半角文字 全半角文字     半角文字 半角文字 半角文字 半角文字 半角文字 全半角文字 全半角文字   半角文字 半角文字 半角文字
英小文字 主要 主要 大文字に変換 使用可能     主要 入力不可 主要 主要 主要 主要 主要 主要 使用可能 使用可能 主要
英大文字 使用可能 使用可能 主要 主要     使用可能 主要 使用可能 主に定数 主に定数 主に定数 使用可能 使用可能 主要 主要  
大小文字区別 なし あり なし なし なし   なし (あり) あり あり あり あり あり あり なし(自動的に大文字変換される。小文字にしたければ「"」でくくる) なし なし
改行 コマンドの実行 コマンドの実行 行の終わり(行番号を使用) 意味あり 意味あり 意味あり 空白と同じ 空白とほぼ同じ 空白と同じ 空白と同じ 空白と同じ 空白と同じ 空白と同じ 空白と同じ 空白とほぼ同じ 空白とほぼ同じ 空白と同じ
行の継続 行末に「^ 行末に「\ なし 行末に「_ 行末に「_ 行末に「_       (行末に「\」 ) (行末に「\」 )       ただ改行 ただ改行 ただ改行
文の区切り コマンドとコマンドは「&」で区切る コマンドとコマンドは「;」で区切る 文と文は「:」で区切る 文と文は「:」or改行で区切る 文と文は「:」or改行で区切る 文と文は「:」or改行で区切る 文と文は「;」で区切る 文の末尾は「; 文の末尾に「;」を付ける 式の末尾に「;」を付ける 式の末尾に「;」を付ける 式の末尾に「;」を付ける 文と文は「;」or改行で区切る 式の末尾に「;」を付ける 行末に「;」を付ける 行末に「;」を付ける スペースで区切る
複文(ブロック) (〜) なし 文によって異なる   文によって異なる begin〜end
end」の前に「;」を書いてはいけない
DO;〜END; {〜} {〜} {〜} {〜} {〜} {〜} 〜commit; DECLARE
 〜

BEGIN
 〜
EXCEPTION
 〜

END;
(progn 〜)
コメント rem〜 #〜 REM〜
'〜
Rem〜
'〜
Rem〜
'〜
  {〜} /*〜*/ #〜 /*〜*/ /*〜*/
//〜
/*〜*/
//〜
/*〜*/
//〜
/*〜*/
//〜
/* 〜*/
--〜
「/*」の直後に文字を続けたらダメ
/*〜*/
--〜
;〜
条件付コンパイル     なし #Const 変数 = 値
#If 条件 Then

#ElseIf 条件 Then

#Else

#End If
  #Const 変数 = 値
#If 条件 Then

#ElseIf 条件 Then

#Else

#End If
なし なし   #if 条件
#ifdef 定義
#ifndef 定義

#elif 条件

#else

#endif
#if 条件
#ifdef 定義
#ifndef 定義

#elif 条件

#else

#endif
なし /*@〜@*/
//@〜

//@cc_on
//@set @変数=値
//@if(条件)

//@elif(条件)

//@else

//@end
#define 定義
#if 定義

#endif
なし なし (eval-when (compile又はload又はeval) 本体)
マクロ     なし             #define 名前 値
#define 名前(引数,…) 本体
#define 名前 値
#define 名前(引数,…) 本体
          (defmacro 名前 (引数 …) 本体〜)
その他     行番号を使用       プログラムの終了は「. 文の開始カラムが決まっている 暗黙の変数「$_」というのがある       htmlファイルの中の<script lang="JavaScript">〜</script>の中に記述するか、<script src="ファイル名"></script>で読み込む
 
    直接実行の場合、最後は「/」 関数型言語
 
外部取込 コマンド
call ファイル名
コマンド
. ファイル名
source ファイル名
      Imports 名前空間   %INCLUDE use モジュール; #include <ファイル名>
#include "ファイル名"
#include <ファイル名>
#include "ファイル名"
import パッケージ名.*;
import パッケージ.クラス名;
  using 名前空間;     (load ファイル名)
最初の一歩 echo Hello echo Hello 10 PRINT "Hello" Sub test()
  Debug.Print "Hello"
End Sub
WScript.Echo "Hello" Imports System

Module Module1
 Sub Main()
  Console.WriteLine("Hello")
 End Sub
End Module
program test(output);
begin
writeln('Hello')
end.
  print "Hello"; #include <stdio.h>

int main(int argc,char* argv[]){
  printf("Hello\n");
  return 0;
}
CXXXView::OnDraw(CDC *pDC)
{
  pDC->TextOut(0,0,"Hello");
}
public class XXX{
  public void main(String[] args){
     System.out.println("Hello");
  }
}
document.write("Hello"); using System;

public class XXX
{
  [STAThread]
  public static void Main()
  {
    Console.WriteLine("Hello");
  }
}
SELECT 'Hello' FROM DUAL; set serveroutput on

BEGIN
DBMS_OUTPUT.PUT_LINE('Hello');
END;
/
(print "Hello")
コンパイル 不要 不要 不要 不要 不要   不要 gcc ファイル.c
makeがよく使われる
VisualStudioでビルド javac XXX.java
antがよく使われる
不要 なし 不要(自動)
ただし「ALTER PROCEDURE(又はFUNCTION,TRIGGER,PACKAGE) 関数名 COMPILE;」で再コンパイル可能
不要
実行 コマンドプロンプトからコマンドを入力 shからコマンドを入力 RUN(F5キーに割り当てられている) VBAのツール上からF5キー(メニューバーの「実行(R)」) cscript ファイル   コンパイル・リンクされた実行ファイルをshから実行 JCLから起動 perl ファイル コンパイル・リンクされた実行ファイルをHuman68k(やsh)から実行 コンパイル・リンクされたexeファイルをWindowsから実行 コマンドプロンプト(やsh)から、コンパイルされたclassファイルに対し
java XXX
htmlファイルをブラウザーから開く F5キー sql*plusより実行 sql*plusより実行  
ソース表示 ソースファイルを見る ソースファイルを見る LIST   ソースファイルを見る   ソースファイルを見る ソースファイルを見る ソースファイルを見る ソースファイルを見る ソースファイルを見る ソースファイルを見る ソースファイルを見る ソースファイルを見る DESC オブジェクト

SELECT * FROM USER_OBJECTS WHERE OBJECT_NAME LIKE'オブジェクト';
SELECT TEXT FROM USER_SOURCE WHERE NAME='関数名' ORDER BY LINE; ソースファイルを見る
ソース保存 エディターによる エディターによる SAVE "ファイル名" Excelの保存・読込 エディターによる   エディターによる ISPFコマンドにて エディターによる エディターによる エディターによる エディターによる エディターによる エディターによる     エディターによる
LOAD "ファイル名" @ファイル名 @ファイル名
*.bat *.sh *.BAS *.xls *.vbs *.vb *.pas

a.out
*.PLI
*.pl *.c、*.h

*.o

*.x
*.cpp、*.h

*.obj

*.exe
*.java

*.class

*.jar
*.html
*.js
*.cs

*.DLL, *.EXE
*.sql *.sql  
実行時引数 %0
%1〜9
%*
$0
$1〜
$* $@
$#
  Command() WScript.Arguments
0〜Arguments.Count-1
Command()       int main(int argc, char* argv[])
argvの0〜argc-1
  public static void main(String[] args)   string[] args = Environment. GetCommandLineArgs();      
Sub Main(ByVal CmdArgs() As String)
End Sub
環境変数 %環境変数% $環境変数
${環境変数}
なし Dim env As String
env = Environ$("環境変数")
Set ws = WScript.CreateObject("WScript.Shell")
Set envs = ws.Environment("PROCESS")
env = envs("環境変数")
        char *env = getenv("環境変数");   String env = System.getenv("環境変数");   string env = Environment. GetEnvironmentVariable("環境変数");      
int main(int argc, char* argv[], char* envp[])
envp[0〜]
終わりはenvp[n]=null
トレース   sh -x                   new Throwable().printStackTrace();   string trace = Environment.StackTrace;      
 
  シェル               ポインター Doc/Viewモデル ジェネリクス   デリゲート     QUOTE

参考文献 / プログラム記号比較 / 技術メモへ戻る
メールの送信先:ひしだま