代表的な言語のHello worldプログラム例をいくつかを紹介します。
・C言語
#include <stdio.h>
int main(void) {
printf("Hello, world!");
return 0;
}
本書のテーマであるC言語での例です。
・C++
#include <iostream>
using namespace std;
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}
C++です。C言語と全体の感じは似てますね。
・JAVA
public class Hello {
int main() {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
今や主流のJAVAです。オブジェクト指向言語といわれており、クラス(class)の宣言が見られます。
次に伝統的な言語FortranとCobolの例を挙げておきます。
・Fortran
WRITE(*,10)
10 FORMAT('Hello, World!')
STOP
END
・Cobol
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
ENVIRONMENT DIVISION.
PROCEDURE DIVISION.
DISPLAY "Hello, world!".
STOP RUN.
最後に筆者の好きな言語の1つであるLispの例を挙げます。
・Lisp
(format t "Hello world!~%")
このように各々の言語に特徴があります。
この程度ならまずは自分でもかけそうだと、コンピュータの前に座って、まず何をどうしたらいいのか、はたと戸惑うことでしょう。この単純なHello worldプログラムを作ってみる前にしないといけないことがあります。
まず、プログラムを作成するために次のような準備が必要です。
コンパイラが入手でき、エディタで前述のHello worldプログラムを作成することが出来たら、おっとその前に、そのときに作ったプログラムはxxx.cと言う風に拡張子にcをつけないといけません。コンパイラはこの拡張子で、C言語のソースプログラムだと認識します。いろいろ覚えないといけないことがありますね^^;
で、早速コンパイルしてみましょう。
コンパイルの方法やいろんなオプション設定があり多様ですが、もっとも単純な方法を以下に示します。
> gcc hello.c -o hoge ← hello.cをコンパイルしてhogeと言う名前でプログラムを作成する
> ← 正しい場合は何のメッセージもでない
コンパイルして出来た実行ファイル名(この場合はhoge)をタイプしてリターンキー
>hoge
あるとき、学生から「hogeというのはどういう意味ですか?」と尋ねられて困ったことがありました。 特に意識せずに慣例的に使っていたものなので、あらためて聞かれて説明に窮しました^^;
後日、そういえば、どうしてhogeとだろうと思い調べたところ、
「メタ構文変数と言われているもので、(もう無理^^;) 日本ではhoge,puyo、米国ではfoo,barが使われる、云々かんぬん」
プログラムの解説をする時、プログラムの名前や変数の名前で困ることがあります。aaaとかbbbとかでその場を凌いだりしますが、aaaに何か意味があるのか、と聞かれると叉困ってしまいます。 「特に意味が無いよ」というときにhogeとかfooとか使います。
叉昔話で恐縮ですが、あるソフトウェアを開発した際に、お客さんからの要望で、間合せ版の導入マニュアルを短期間(1週間程度)で作らないといけないことがありました。画面のショットをとったり、コマンドの説明を入れたりしてるうちに、段々飽きてきて、hog
ehoge(当時はこのように繰り返すのが普通だったように思う)ではなくて、guriguriとかpuripuriとかあちこちに妙な変数名やコマンド名を使いました。
後日、お客さんから「相当急いで作ったみたいですね。」と言われました^^;