作为所有编程语言的起始阶段,HELLO WORLD占据着无法改变的地位,所有中/英/法/德/美……版本的编程教材中,HELLO WORLD总是作为第一个TEST记录于书本之中,所有的编程第一步就在于此了!经典之中的经典!HELLO WORLD!
这个例程是从Kernighan & Ritchie 合著的《The C Programme Language》开始有的,因为它的简洁,实用,并包含了一个程序所应具有的一切,因此为后来的些类书的作者提供了范例,一直待续到今。
我们刚开始接触计算机语言大多从Hello world 开始,下面是各种语言的Hello world program:
as400的RPGLE语言:
D Vc_Hello s 100A
C Ev al Vc_Hello = 'Hello World!'
C DSPLY Vc_Hello
AKA 控制台:ABC语言的Hello World程序 WHILE (1=1) :
WRITE "Hello World "
Ada语言的Hello World程序 with Ada.Text_Io; use Ada.Text_Io;
procedure Hello is
begin
Put_Line ("Hello, world!");
end Hello;
AmigaE语言的Hello World程序 PROC main()
WriteF('Hello, World!')
ENDPROC
APL语言的Hello World程序 'Hello World'
Assembly语言的Hello World程序 Accumulator-on ly architecture: DEC PDP-8, PAL-III assembler
See the Example section of the PDP-8 article.
Accumulator + index register machine: MOS 6502, CBM, ca65 asm
MSG: .ASCIIZ "Hello, world!"
LDX #0
LDA MSG,X ; load initial char
@LP: JSR $FFD2 ; CHROUT CBM KERNAL
INX
LDA MSG,X
BNE @LP
RTS
Accumulator/Index microcoded machine: Da ta General Nova, RDOS
See the example section of the Nova article.
Expanded accumulator machine: Intel x86, MS-DOS, TASM
MODEL SMALL
IDEAL
STACK 100H
DATASEG语言的Hello World程序 MSG DB 'Hello, world!$'
CODESEG语言的Hello World程序 MOV AX, @da ta
MOV DS, AX
MOV DX, OFFSET MSG
MOV AH, 09H ; DOS: output ASCII$ string
INT 21H
MOV AX, 4C00H
INT 21H
END
General-purpose-register CISC: DEC PDP-11, RT-11, MACRO-11
.MCALL .REGDEF,.TTYOUT,.EXIT
.REGDEF
HELLO: MOV #MSG,R1
MOVB (R1),R0
LOOP: .TTYOUT
MOVB +(R1),R0
BNE LOOP
.EXIT
MSG: .ASCIZ /HELLO, WORLD!/
.END HELLO
CISC: VAX, VMS, MACRO32
.title hello
term_name: .ascid /SYS$INPUT/
term_chan: .blkw 1
out_iosb: .blkq 1
msg: .asciz /Hello, world!/
.entry start,0
; establish a channel for terminal I/O
$assign_s devnam=term_name,-
chan=term_chan
blbc r0,error
; queue the I/O request
$qio_s chan=term_chan,-
func=#io$_writevblk,-
iosb=out_iosb,-
p1=msg,-
p2=#13
blbc r0,error
$exit_s ; normal exit
error: halt ; error condition
.end start
AWK语言的Hello World程序 BEGIN { print "Hello, world!" }
BASIC语言的Hello World程序 PRINT "HELLO WORLD"
MS BASIC语言的Hello World程序 (traditional, unstructured)
10 PRINT "Hello, world!"
20 END
TI-BASIC语言的Hello World程序 isp "Hello, world!"
Structured BASIC语言的Hello World程序 print "Hello, world!"
BCPL语言的Hello World程序 GET "LIBHDR"
LET START () BE
$(
WRITES ("Hello, world!*N")
$)
C语言的Hello World程序
#include <stdio.h>
int main(void)
{
printf("Hello, world!\n");
}
C++语言的Hello World程序 #include <iostream>
using namespace std;
int main()
{
cout << "Hello, world!" << endl;
return 0;
}
C#语言的Hello World程序 class HelloWorldApp
{
public static void Main()
{
System.Console.WriteLine("Hello world!");
}
}
Clean语言的Hello World程序 module hello
Start :: String
Start = "Hello, world"
CLIST语言的Hello World程序 PROC 0
WRITE Hello, World!
COBOL语言的Hello World程序 IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
ENVIRONMENT DIVISION.
DA TA DIVISION.
PROCEDURE DIVISION.
DISPLAY "Hello, world!".
STOP RUN.
Common Lisp语言的Hello World程序 (format t "Hello world!~%")
Eiffel语言的Hello World程序 class HELLO_WORLD
creation
make
feature
make is
local
io:BASIC_IO
do
!!io
io.put_string("%N Hello, world!")
end -- make
end -- class HELLO_WORLD
Erlang语言的Hello World程序 -module(hello).
-export([hello_world/0]).
hello_world() -> io:fwrite("Hello, world!\n").
Forth语言的Hello World程序 ." Hello, world!" CR
Fortran语言的Hello World程序 PROGRAM HELLO
WRITE(*,10)
10 FORMAT('Hello, world!')
STOP
END
Haskell语言的Hello World程序 module HelloWorld (main) where
main = putStr "Hello World\n"
Iptscrae语言的Hello World程序 ON ENTER {
"Hello, " "World!" & SAY
}
Java语言的Hello World程序 public class Example{
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
Logo语言的Hello World程序 print [hello world!]
Lua语言的Hello World程序 print "Hello, world!"
MIXAL语言的Hello World程序 TERM EQU 19 the MIX console device number
ORIG 1000 start address
START OUT MSG(TERM) output da ta at address MSG
HLT halt execution
MSG ALF "MIXAL"
ALF " HELL"
ALF "O WOR"
ALF "LD "
END START end of the program
MSDOS batch语言的Hello World程序 @echo off
echo Hello, world!
OCaml语言的Hello World程序 let _ =
print_endline "Hello world!";;
OPL
PROC hello:
PRINT "Hello, World"
ENDP
Pascal语言的Hello World程序 program hello_world;
begin
writeln('Hello World!');
end.
Perl语言的Hello World程序 print "Hello, world!\n";
PHP语言的Hello World程序 <?php
print("Hello, world!");
?>
Pike语言的Hello World程序 #!/usr/local/bin/pike
int main() {
write("Hello, world!\n");
return 0;
}
PL/I语言的Hello World程序 Test: procedure options(main);
declare My_String char(20) varying initialize('Hello, world!');
put skip list(My_String);
end Test;
Python语言的Hello World程序 print "Hello, world!"
REXX语言的Hello World程序 also NetRexx and Object REXX
say "Hello, world!"
Ruby语言的Hello World程序 print "Hello, world!\n"
Sather语言的Hello World程序 class HELLO_WORLD is
main is
#OUT+"Hello World\n";
end;
end;
Scheme语言的Hello World程序 (display "Hello, world!")
(newline)
sed语言的Hello World程序 (requires at least on e line of input)
sed -ne '1s/.*/Hello, world!/p'
Self语言的Hello World程序 'Hello, World!' uppercase print.
Smalltalk语言的Hello World程序 Transcript show: 'Hello, world!'
SML语言的Hello World程序 print "Hello, world!\n";
SNOBOL语言的Hello World程序 OUTPUT = "Hello, world!"
END
SQL语言的Hello World程序 create table MESSAGE (TEXT char(15));
insert into MESSAGE (TEXT) values ('Hello, world!');
select TEXT from MESSAGE;
drop table MESSAGE;
Or, more simply
print 'Hello, World.'
StarOffice Basic
sub main
print "Hello, World"
end sub
Tcl语言的Hello World程序 puts "Hello, world!"
Turing语言的Hello World程序 put "Hello, world!"
UNIX-style shell语言的Hello World程序 echo 'Hello, world!'
Romanian pseudocode语言的Hello World程序 (UBB Cluj-Napoca)Algoritmul Salut este:
fie s:="Hello, world";
tipareste s;
sf-Salut
传统图形界面应用开发工具:C++ bindings for GTK graphics toolkit #include
#include
#include
#include
using namespace std;
class HelloWorld : public Gtk::Window {
public:
HelloWorld();
virtual ~HelloWorld();
protected:
Gtk::Button m_button;
virtual void on_button_clicked();
};
HelloWorld::HelloWorld()
: m_button("Hello, world!") {
set_border_width(10);
m_button.signal_clicked().connect(SigC:lot(*this,
&HelloWorld::on_button_clicked));
add(m_button);
m_button.show();
}
HelloWorld::~HelloWorld() {}
void HelloWorld::on_button_clicked() {
cout << "Hello, world!" << endl;
}
int main (int argc, char *argv[]) {
Gtk::Main kit(argc, argv);
HelloWorld helloworld;
Gtk::Main::run(helloworld);
return 0;
}
Java语言的Hello World程序 imp ort java.awt.*;
imp ort java.awt.event.*;
public class HelloFrame extends Frame {
HelloFrame(String title) {
super(title);
}
public void paint(Graphics g) {
super.paint;
java.awt.Insets ins = this.getInsets();
g.drawString("Hello, world!", ins.left + 25, ins.top + 25);
}
public static void main(String args [])
{
HelloFrame fr = new HelloFrame("Hello");
fr.addWindowListener(
new WindowAdapter() {
public void windowClosing(WindowEvent e)
{
System.exit( 0 );
}
}
);
fr.setResizable(true);
fr.setSize(500, 100);
fr.setVisible(true);
}
}
Qt toolkit (in C++)
#include
#include
#include
#include
class HelloWorld : public QWidget
{
Q_OBJECT
QApplication app语言的Hello World程序 (argc, argv);
HelloWorld helloWorld;
app.setMainWidget(&helloWorld);
helloWorld.show();
return app.exec();
}
Visual Basic语言的Hello World程序 1.信息框
MsgBox "Hello, world!"
2.输出到窗体
Print "Hello, world!"
Windows API (in C)语言的Hello World程序 #include
LRESULT CALLBACK WindowProcedure(HWND, UINT, WPARAM, LPARAM);
char szClassName[] = "MainWnd";
HINSTANCE hInstance;
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
HWND hwnd;
MSG msg;
WNDCLASSEX wincl;
hInstance = hInst;
wincl.cbSize = sizeof(WNDCLASSEX);
wincl.cbClsExtra = 0;
wincl.cbWndExtra = 0;
wincl.style = 0;
wincl.hInstance = hInstance;
wincl.lpszClassName = szClassName;
wincl.lpszMenuName = NULL; //No menu
wincl.lpfnWndProc = WindowProcedure;
wincl.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1); //Color of the window
wincl.hIcon = LoadIcon(NULL, IDI_APPLICATION); //EXE icon
wincl.hIconSm = LoadIcon(NULL, IDI_APPLICATION); //Small program icon
wincl.hCursor = LoadCursor(NULL, IDC_ARROW); //Cursor
if (!RegisterClassEx(&wincl))
return 0;
hwnd = CreateWindowEx(0, //No extended window styles
szClassName, //Class name
"", //Window caption
WS_OVERLAPPEDWINDOW & ~WS_MAXIMIZEBOX,
CW_USEDEFAULT, CW_USEDEFAULT, //Let Windows decide the left and top positions of the window
120, 50, //Width and height of the window,
NULL, NULL, hInstance, NULL);
//Make the window visible on the screen
ShowWindow(hwnd, nCmdShow);
//Run the message loop
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WindowProcedure(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hwnd, &ps);
TextOut(hdc, 15, 3, "Hello, world!", 13);
EndPaint(hwnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
}
return 0;
}
基于web图形用户界面:Java applet语言的Hello World程序 Java applets work in conjunction with HTML files.
HelloWorld Program says:
imp ort java.applet.*;
imp ort java.awt.*;
public class HelloWorld extends Applet {
public void paint(Graphics g) {
g.drawString("Hello, world!", 100, 50);
}
}
JavaS cript, aka ECMAScript JavaS cript is a scripting language used in HTML files. To demo this program Cut and Paste the following co de into any HTML file.
on click="javas cript:helloWorld();">Hello World Example
An easier method uses JavaS cript implicitly, calling the reserved alert function. Cut and paste the following line inside the .... HTML tags.
Hello World Example
An even easier method involves using popular browsers' support for the virtual 'javas cript' protocol to execute JavaS cript co de. Enter the following as an Internet address (usually by pasting into the address box):
javas cript:alert('Hello, world!')
文档格式:
ASCII语言的Hello World程序 The following sequence of characters, expressed in hexadecimal notation (with carriage return and newline characters at end of sequence):
48 65 6C 6C 6F 2C 20 77 6F 72 6C 64 21 0D 0A
HTML语言的Hello World程序 <HTML>
<body>
<p>Hello, world!</p>
</body>
</HTML>
PostScript语言的Hello World程序 /font /Courier findfont 24 scalefont
font setfont
100 100 moveto
(Hello world!) show
showpage
TeX语言的Hello World程序 \font\HW=cmr10 scaled 3000
\leftline{\HW Hello world}
\bye
LaTeX语言的Hello World程序 \documentclass{article}
\begin{document}
Hello, world!
\end{document}
批处理语言的Hello World程序 echo Hello World!
易语言的Hello World程序 窗体程序:
.子程序 __启动窗口_创建完毕
信息框 (“Hello, world!”, 0, )
控制台程序:
.版本 2
.程序集 程序集1
.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
标准输出 (, “Hello World!”) ' 输出Hello World
标准输入 () ' 达到暂停程序的效果以便于查看Hello World
返回 (0) ' 可以根据您的需要返回任意数值
O语言的Hello World程序 O汇编语言的Hello World程序
.包含文<*oasm32.oah>
.包含文<*user32.oah>
.包含文<*kernel32.oah>
.引用库<*user32.lib>
.引用库<*kernel32.lib>
.代码段
{
入口 主函数()
{
提示框(0,&"Hello, world!",&"hello world!",0)
退出进程(0);
}
}
O中间语言的Hello world程序
.包含文<*视窗32.omh>
入口 主函数()
{
提示框(0,取地址 "Hello world!",取地址 "",0);
退出进程(0);
}
GML语言的Hello world程序 draw_text ( 0 , 0 , "Hello World")
javas cript语言的Hello World程序 <script language="javas cript">
alert('hello word!');
</script>