240种不同语言写的Hello World的程序

这个博客展示了从1C-Enterprise到XUL的240种不同编程语言实现的Hello World程序,包括C++、Java、Python等常见语言以及一些不常见的如Algol-60、Forth、QuakeC等。通过这些简单的代码,读者可以了解到各种编程语言的基本语法和特性。
摘要由CSDN通过智能技术生成

1C-Enterprise

 

// Hello World in 1C:Enterprise built-in script language

Message("Hello, World!");
Back to index

ABAP4

 

REPORT ZHB00001.
*Hello world in ABAP/4 *
WRITE: 'Hello world'.
Back to index

Actionscript-Flash5

 

// Hello World in Actionscript (up to Flash 5, IDE only)

trace ("Hello World");
Back to index

Actionscript-FlashMX

 

// Hello World in Actionscript (Flash MX onwards) 

_root.createTextField("mytext",1,100,100,300,100);
mytext.multiline = true;
mytext.wordWrap = true;
mytext.border = false;

myformat = new TextFormat();
myformat.color = 0xff0000;
myformat.bullet = false;
myformat.underline = true;

mytext.text = "Hello World!";
mytext.setTextFormat(myformat);
Back to index

Ada

 

-- Hello World in Ada

with TEXT_IO; use TEXT_IO;
procedure Hello is
pragma MAIN;
begin
PUT ("Hello World!");
end Hello;
Back to index

Algol-60

 

'BEGIN'
'COMMENT' Hello World in Algol 60;
OUTPUT(4,'(''('Hello World!')',/')')
'END'
Back to index

Algol-68

 

( # Hello World in Algol 68 # print(("Hello World!",newline)))
Back to index

Amiga-E

 

-> Hello World in Amiga-E

PROC main() IS WriteF('Hello World/n')
Back to index

APL

 

Hello World for APL. "[]" and "<-" are a single character in APL.
Comment character is Alt-comma.

[]<-'Hello World!'
Back to index

AppleScript

 

-- "Hello World" in AppleScript:

display dialog "Hello World"
Back to index

ASP-JavaScript

 

Hello World for Microsoft ASP (in JavaScript)

<%@ language="javascript" %>
<html><body>
<%
Response.Write('Hello World!');
%>
</body></html>
Back to index

ASP-VBE

 

<!-- Hello World in ASP-VBE (Visual Basic Script Encided) -->
<html>
<script language="VBScript.Encode">#@~^HQAAAA==@#@&HdTAK6PrCsVKP WMV[Zr@#@&HwcAAA==^#~@</script>
</html>
Back to index

ASP-VBS

 

Hello World for Microsoft ASP (in VBScript)

<%@ language="vbscript" %>
<html><body>
<%
Response.write "Hello World!"
%>
</body></html>
Back to index

Assembler-6502

 

; Hello World for 6502 Assembler (C64)

ldy #0
beq in
loop:
jsr $ffd2
iny
in:
lda hello,y
bne loop
rts
hello: .tx "Hello World!"
.by 13,10,0
Back to index

Assembler-68000-Amiga

 

; Hello World in 68000 Assembler for dos.library (Amiga)

move.l #DOS
move.l 4.w,a6
jsr -$0198(a6) ;OldOpenLibrary
move.l d0,a6
beq.s .Out
move.l #HelloWorld,d1

A) moveq #13,d2
jsr -$03AE(a6) ;WriteChars

B) jsr -$03B4 ;PutStr

move.l a6,a1
move.l 4.w,a6
jsr -$019E(a6) ;CloseLibrary
.Out rts

DOS dc.b 'dos.library',0
HelloWorld dc.b 'Hello World!',$A,0
Back to index

Assembler-68000-AtariST

 

; Hello World in 68000 Assembler (Atari ST)

move.l #helloworld,-(A7)
move #9,-(A7)
trap #1
addq.l #6,A7
move #0,-(A7)
trap #1
helloworld:
dc.b "Hello World!",$0d,$0a,0
Back to index

Assembler-68008

 

; Hello World in 68008 Assembler (Sinclar QL)

move.l #0,a0
lea.l mess,a1
move.w $d0,a2
jsr (a2)
rts
mess dc.w 12
dc.b 'Hello World!',10
end
Back to index

Assembler-DG-Nova

 

                        .TITL HELLO
02 ; "HELLO, WORLD" FOR NOVA RUNNING RDOS
03 ; USES PCHAR SYSTEM CALL
04 .NREL
05 .ENT START
06
07 START:
08 00000'022424 DOCHAR: LDA 0,@PMSG ; LOAD AC0 WITH NEXT CHARACTER,
09 00001'101015 MOV# 0,0,SNR ; TEST AC0;
10 00002'000412 JMP DONE ; SKIPPED IF NONZERO
11 00003'006017 .SYSTM
12 00004'010000 .PCHAR ; PRINT FIRST
13 00005'000413 JMP ER ; SKIPPED IF OK
14 00006'101300 MOVS 0,0 ; SWAP BYTES
15 00007'006017 .SYSTM
16 00010'010000 .PCHAR ; PRINT SECOND
17 00011'000407 JMP ER ; SKIPPED IF OK
18 00012'010412 ISZ PMSG ; POINT TO NEXT WORD
19 00013'000765 JMP DOCHAR ; GO AROUND AGAIN
20
21 00014'006017 DONE: .SYSTM ; NORMAL EXIT
22 00015'004400 .RTN
23 00016'000402 JMP ER
24 00017'063077 HALT
25 00020'006017 ER: .SYSTM ; ERROR EXIT
26 00021'006400 .ERTN
27 00022'063077 HALT
28 00023'063077 HALT
29
30 00024'000025'PMSG: .+1 ; ADDRESS OF FIRST WORD OF TEXT
31 ; NOTE BYTES ARE PACKED RIGHT-TO-LEFT BY DEFAULT
32 00025'042510 .TXT /HELLO, WORLD!<15><12>/ ; THAT'S CR LF
33 046114
34 026117
35 053440
36 051117
37 042114
38 006441
39 000012
40 00035'000000 0 ; FLAG WORD TO END STRING
41
42 .END START
Back to index

Assembler-IBM-370

 

ITLE 'Hello World for IBM Assembler/370 (VM/CMS)'
HELLO START
BALR 12,0
USING *,12
*
WRTERM 'Hello World!'
*
SR 15,15
BR 14
*
END HELLO
Back to index

Assembler-Intel

 

; Hello World for Intel Assembler (MSDOS)

mov ax,cs
mov ds,ax
mov ah,9
mov dx, offset Hello
int 21h
xor ax,ax
int 21h

Hello:
db "Hello World!",13,10,"___FCKpd___19quot;
Back to index

Assembler-MIPS

 

## Hello Word in Assemlber for the MIPS Architecture

.globl main

main: jal hwbody #call Hello Word Procedure
trap 10 #exit

hwbody: addi $30, $30,-4 #we need to preserve
sw $4, 0($30) #existing values in register 4

addi $4,$0,72 # H
trap 101
addi $4,$0,101 # e
trap 101
addi $4,$0,108 # l
trap 101
trap 101 # l
addi $4,$0,111 # o
trap 101
addi $4,$0,32 # <space>
trap 101
addi $4,$0,87 # W
trap 101
addi $4,$0,111 # o
trap 101
addi $4,$0,114 # r
trap 101
addi $4,$0,108 # l
trap 101
addi $4,$0,100 # d
trap 101
addi $4,$0,33 # !
trap 101
addi $4,$0,10 # /n
trap 101

done: lw $4, 0($30) #restore values
addi $30, $30, 4 #in register 4
jr $31 #return to the main
Back to index

Assembler-MMIX

 

*	Hello World in Assembler 
* for the MMIX Computer

LOC #100
Main GETA $255,String
TRAP 0,Fputs,StdOut
TRAP 0,Halt,0
String BYTE "Hello, world!",#a,0
Back to index

Assembler-PDP11

 

;       Hello World in Assembler for the DEC PDP-11 with the
; RSX-11M-PLUS operating system
;
.title Hello
.ident /V0001A/
.mcall qiow$s, exit$s
.psect $code,ro,i
start: qiow$s #5,#5,,,,<#str, #len, #40>
exit$s
.psect $data,ro,d
str: .ascii / Hello World!/
len=.-str
.end start
Back to index

Assembler-PDP8

 

/ Hello World in Assembler for the DEC PDP-8
*200
hello, cla cll
tls / tls to set printer flag.
tad charac / set up index register
dca ir1 / for getting characters.
tad m6 / set up counter for
dca count / typing characters.
next, tad i ir1 / get a character.
jms type / type it.
isz count / done yet?
jmp next / no: type another.
hlt

type, 0 / type subroutine
tsf
jmp .-1
tls
cla
jmp i type
charac, . / used as initial value of ir1
310 / H
305 / E
314 / L
314 / L
317 / O
254 / ,
240 /
327 / W
317 / O
322 / R
314 / L
304 / D
241 / !
m6, -15
count, 0
ir1 = 10
$
Back to index

Assembler-VP

 

; Hello World in VP Assembler for intent (Amiga Anywhere)

.include 'tao'

tool 'home/hello',VP,TF_MAIN,8192,0
ent (-:-)
qcall lib/print,(hello_world.p : i~)
ret ()
entend

data

hello_world:
dc.b "Hello World!",ASCII_LF,0

toolend
Back to index

Assembler-Win32

 

; Hello world in Assembler for the Win32 architecture

TITLE Hello world in win32. Tasm

VERSION T310
Model use32 Flat,StdCall

start_code segment byte public 'code' use32
begin:
Call MessageBox, 0, offset sHallo, offset caption, 0
Call ExitProcess, 0
start_code Ends

start_data segment byte public 'data' use32

sHallo db 'Hello world',0
caption db "Hi",0

start_data Ends
End begin
Back to index

Assembler-Z80-Console

 

; This is a "Hello World" program for Z80 and TMS9918 / TMS9928 / TMS9929 /
; V9938 or V9958 VDP.
; That means that this should work on SVI, MSX, Colecovision, Memotech,
; and many other Z80 based home computers or game consoles.
;
; Because we don't know what system is used, we don't know where RAM
; is, so we can't use stack in this program.
;
; This version of Hello World was written by Timo "NYYRIKKI" Soilamaa
; 17.10.2001
;
;----------------------------------------------------------------------
; Configure this part:

DATAP: EQU #98 ; VDP Data port #98 works on all MSX models
; (TMS9918/TMS9929/V9938 or V9958)
; #80 works on SVI
; (for other platforms you have to figure this out by your self)

CMDP: EQU #99 ; VDP Command port #99 works on all MSX models
; (TMS9918/TMS9929/V9938 or V9958)
; #81 works on SVI
; (for other platforms you have to figure this out by your self)
;-----------------------------------------------------------------------
; Program starts here:

ORG 0 ; Z80 starts always from here when power is turned on
DI ; We don't know, how interrupts works in this system, so we disable them.

; Let's set VDP write address to #0000
XOR A
OUT (CMDP),A
LD A,#40
OUT (CMDP),A

; Now let's clear first 16Kb of VDP memory
LD B,0
LD HL,#3FFF
LD C,DATAP
CLEAR:
OUT (C),B
DEC HL
LD A,H
OR L
NOP ; Let's wait 8 clock cycles just in case VDP is not quick enough.
NOP
JR NZ,CLEAR

; Now it is time to set up VDP registers:
;----------------------------------------
; Register 0 to #0
;
; Set mode selection bit M3 (maybe also M4 & M5) to zero and
; disable external video & horizontal interrupt
LD C,CMDP
LD E,#80

OUT (C),A
OUT (C),E
;----------------------------------------
; Register 1 to #50
;
; Select 40 column mode, enable screen and disable vertical interrupt

LD A,#50
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Register 2 to #0
;
; Set pattern name table to #0000

XOR A
INC E
OUT (C),A
OUT (C),E
;----------------------------------------
; Register 3 is ignored as 40 column mode does not need color table
;
INC E
;----------------------------------------
; Register 4 to #1
; Set pattern generator table to #800

INC A
INC E

OUT (C),A
OUT (C),E
;----------------------------------------
; Registers 5 (Sprite attribute) & 6 (Sprite pattern) are ignored
; as 40 column mode does not have sprites

INC E
INC E
;----------------------------------------
; Register 7 to #F0
; Set colors to white on black

LD A,#F0
INC E
OUT (C),A
OUT (C),E
;----------------------------------------

; Let's set VDP write address to #808 so, that we can write
; character set to memory
; (No need to write SPACE it is clear char already)
LD A,8
OUT (C),A
LD A,#48
OUT (C),A

; Let's copy character set
LD HL,CHARS
LD B, CHARS_END-CHARS
COPYCHARS:
LD A,(HL)
OUT (DATAP),A
INC HL
NOP ; Let's wait 8 clock cycles just in case VDP is not quick enough.
NOP
DJNZ COPYCHARS

; Let's set write address to start of name table
XOR A
OUT (C),A
LD A,#40
OUT (C),A

; Let's put characters to screen
LD HL,ORDER
LD B,ORDER_END-ORDER
COPYORDER:
LD A,(HL)
OUT (DATAP),A
INC HL

JR OVERNMI
NOP
NOP

; Here is address #66, that is entry for NMI
RETN ;Return from NMI

OVERNMI:
DJNZ COPYORDER

; The end
HALT

; Character set:
; --------------
ORDER:
DEFB 1,2,3,3,4,0,5,4,6,3,7
ORDER_END:

CHARS:

; H
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %11111000
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %00000000
; e
DEFB %00000000
DEFB %00000000
DEFB %01110000
DEFB %10001000
DEFB %11111000
DEFB %10000000
DEFB %01110000
DEFB %00000000
; l
DEFB %01100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %00100000
DEFB %01110000
DEFB %00000000
; o
DEFB %00000000
DEFB %00000000
DEFB %01110000
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %01110000
DEFB %00000000
; W
DEFB %10001000
DEFB %10001000
DEFB %10001000
DEFB %10101000
DEFB %10101000
DEFB %11011000
DEFB %10001000
DEFB %00000000

; r
DEFB %00000000
DEFB %00000000
DEFB %10110000
DEFB %11001000
DEFB %10000000
DEFB %10000000
DEFB %10000000
DEFB %00000000
; d
DEFB %00001000
DEFB %00001000
DEFB %01101000
DEFB %10011000
DEFB %10001000
DEFB %10011000
DEFB %01101000
DEFB %00000000
chars_end:
Back to index

Assembler-ZX81

 

; Hello World in Assembler for the ZX81 (Zilog Z80)

CALL SPRINT
DEFM HELLO WORLD.
DEFB FF
RET
SPRINT POP HL
LD A,(HL)
INC HL
PUSH HL
CP FF
RET Z
CALL PRINT
JR SPRINT
Back to index

AutoIT3

 

;Hello, World for AutoIT3  http://www.autoitscript.com

msgbox(0,"Hello World",0)
Back to index

AviSynth

 

Hello World for AviSynth Video Editor.
Requires AVI and WAV file.

video = AVISource("someoneSayingHelloWorld.avi")
sound_track = WAVSource("someoneSayingHelloWorld.wav")
AudioDub(video, sound_track)
subtitle("Hello World!")
Back to index

awk

 

# Hello World in awk
BEGIN {
print "Hello World!"
exit
}
Back to index

Axel

 

Hello World in AXEL (lip-synched speech)

... too large for this page, can be found here:
http://medieskolan.avc.edu.stockholm.se/axel/index.htm
Back to index

B

 

/* Hello World in B */

main() {
extern a, b, c;
putchar (a); putchar (b); putchar (c); putchar ('!*n');
}

a 'hell' ;
b 'o, w' ;
c 'orld' ;
Back to index

BAL

 

Hello World in IBM mainframe Basic Assembler Language (BAL)

HELLO CSECT
STM R14,R12,12(R13)
LR R12,R15
USING HELLO,R12
LA R10,SAVEAREA
ST R13,4(R10)
ST R10,8(R13)
LR R13,R10
*
WTO 'HELLO WORLD',ROUTCDE=1
*
L R13,4(R13)
LM R14,R12,12(R13)
SR R15,R15
BCR B'1111',R14
*
SAVEAREA DS 18F
LTORG
R0 EQU 0
R1 EQU 1
R2 EQU 2
R3 EQU 3
R4 EQU 4
R5 EQU 5
R6 EQU 6
R7 EQU 7
R8 EQU 8
R9 EQU 9
R10 EQU 10
R11 EQU 11
R12 EQU 12
R13 EQU 13
R14 EQU 14
R15 EQU 15
END HELLO
Back to index

BASIC

 

10 REM Hello World in BASIC
20 PRINT "Hello World!"
Back to index

bc

 

#!/usr/bin/bc -q
# Hello World for the Unix "bc" calculator

print "Hello World!/n"
Back to index

BCPL

 

// Hello world in BCLP
GET "libhdr"

LET start() = VALOF
$( writes("Hello world*N")
RESULTIS 0
$)
Back to index

Beta

 

{ *** Hello World in BETA ***}
(#
do
'Hello World!'->putLine
#)
Back to index

BrainFxxx

 

Hello World in BrainF***.

++++++++++[->+++++++>++++++++++>+++++++++++>
+++++++++++>++++>+++>+++++++++>+++++++++++>+
+++++++++>+++<<<<<<<<<<]>++.>+.>--..>+.>++++
.>++.>---.<<<.>>>>++++.<<<<<.>>>>>>.>+++.
Back to index

BS2000

 

/BEGIN-PROCEDURE LOGGING=N
/REMARK "HELLO WORLD" IN BS2000 (SDF)
/ASSIGN-SYSDTA TO-FILE=*SYSCMD
/WRITE-TEXT 'HELLO WORLD!'
/SET-JOB-STEP
/ASSIGN-SYSDTA TO-FILE=*PRIMARY
/END-PROCEDURE
Back to index

C++

 

// Hello World in C++

#include <iostream.h>

main()
{
cout << "Hello World!" << endl;
return 0;
}
Back to index

C++-Epoc

 

// Hello World in C++, Epoc style (for Symbian OS)

#include <eikapp.h>
#include <eikdoc.h>
#include <eikappui.h>

class CHelloWorldAppUi;
class CEikApplication;
class CHelloWorldAppView;

class CHelloWorldApplication : public CEikApplication
{
public:
TUid AppDllUid() const;
protected:
CApaDocument* CreateDocumentL();
};

class CHelloWorldDocument : public CEikDocument
{
public:
static CHelloWorldDocument* NewL(CEikApplication& aApp);
static CHelloWorldDocument* NewLC(CEikApplication& aApp);
~CHelloWorldDocument(){};
public:
CEikAppUi* CreateAppUiL();
private:
void ConstructL() {};
CHelloWorldDocument(CEikApplication& aApp){};
};

class CHelloWorldAppUi : public CEikAppUi
{
public:
void ConstructL();
CHelloWorldAppUi(){};
~CHelloWorldAppUi(){};
};

static const TUid KUidHelloWorldApp = {0x10005B91};

GLDEF_C TInt E32Dll(TDllReason )
{
return KErrNone;
}

EXPORT_C CApaApplication* NewApplication()
{
return (new CHelloWorldApplication);
}

CApaDocument* CHelloWorldApplication::CreateDocumentL()
{
CApaDocument* document = CHelloWorldDocument::NewL(*this);
return document;
}

TUid CHelloWorldApplication::AppDllUid() const
{
return KUidHelloWorldApp;
}

CHelloWorldDocument* CHelloWorldDocument::NewL(CEikApplication& aApp)
{
CHelloWorldDocument* self = NewLC(aApp);
CleanupStack::Pop(self);
return self;
}

CHelloWorldDocument* CHelloWorldDocument::NewLC(CEikApplication& aApp)
{
CHelloWorldDocument* self = new (ELeave) CHelloWorldDocument(aApp);
CleanupStack::PushL(self);
self->ConstructL();
return self;
}

CEikAppUi* CHelloWorldDocument::CreateAppUiL()
{
CEikAppUi* appUi = new (ELeave) CHelloWorldAppUi;
return appUi;
}

void CHelloWorldAppUi::ConstructL()
{
BaseConstructL();

_LIT(message,"Hello!");
CAknInformationNote* informationNote = new (ELeave) CAknInformationNote;
informationNote->ExecuteLD(message);
}
Back to index

C++-ISO

 

// Hello World in ISO C++

#include <iostream>

int main()
{
std::cout << "Hello World!" << std::endl;
}
Back to index

C++-MFC

 

// Hello World in C++ for Microsoft Foundation Classes
// (Microsoft Visual C++).

#include <afxwin.h>

class CHello : public CFrameWnd
{
public:
CHello()
{
Create(NULL,_T("Hello World!"),WS_OVERLAPPEDWINDOW,rectDefault);
}
};

class CHelloApp : public CWinApp
{
public:
virtual BOOL InitInstance();
};

BOOL CHelloApp::InitInstance()
{
m_pMainWnd = new CHello();
m_pMainWnd->ShowWindow(m_nCmdShow);
m_pMainWnd->UpdateWindow();
return TRUE;
}

CHelloApp theApp;
Back to index

C++-Qt

 

// Hello World in C++ for the Qt framework

#include <qapplication.h>
#include <qlabel.h>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QLabel l("Hello World!", 0);
l.setCaption("Test");
l.setAlignment(Qt::AlignCenter);
l.resize(300, 200);
a.setMainWidget(&l);
l.show();
return(a.exec());
}
Back to index

C-Ansi

 

/* Hello World in C, Ansi-style */

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
puts("Hello World!");
return EXIT_SUCCESS;
}
Back to index

C-Curses

 

/* Hello World in C for Curses */

#include <curses.h>
main()
{
initscr();
addstr("Hello World!/n");
refresh();
endwin();
return 0;
}
Back to index

C-GEM

 

/* Hello World for C with GEM */

#include <aes.h>
main()
{
appl_init();
form_alert(1,"[0][Hello World!][Ok]");
appl_exit();
return 0;
}
Back to index

C-Intuition

 

/* Hello World in C for Intution (Amiga GUI) */

#include <intuition/intuition.h>

struct IntuitionBase *IntuitionBase = NULL;

struct IntuiText hello_text = {-1,-1,JAM1,0,0,NULL,"Hello World!",NULL };
struct IntuiText ok_text = {-1,-1,JAM1,0,0,NULL,"Ok",NULL };

void main(void)
{
IntuitionBase = (struct IntuitionBase *)
OpenLibrary("intuition.library", 0);
AutoRequest(NULL, &hello_text, NULL, &ok_text, NULL, NULL, 100, 50);
CloseLibrary(IntuitionBase);
}
Back to index

C-K+R

 

/* Hello World in C, K&R-style */

main()
{
puts("Hello World!");
return 0;
}
Back to index

C-Objective

 

/* Hello World in Objective-C.
** Since the standard implementation is identical to K&R C,
** a version that says hello to a set of people passed on
** the command line is shown here.
*/

#include <stdio.h>
#include <objpak.h>
int main(int argc,char **argv)
{
id set = [Set new];
argv++;while (--argc) [set add:[String str:*argv++]];
[set do:{ :each | printf("hello, %s!/n",[each str]); }];
return 0;
}
Back to index

C-PresManager

 

/* Hello World for C with PresentationManager / OS/2 2.11  */

#define INCL_WIN

#include <os2.h>

int main( void )
{
HMQ hmq;

hmq = WinCreateMsgQueue( 0, 0 );

WinMessageBox( HWND_DESKTOP, HWND_DESKTOP, (PSZ)"Hello World!",
(PSZ)"", 0, MB_OK );

WinDestroyMsgQueue( hmq );

return 0;
}
Back to index

C-Sharp

 

// Hello World in Microsoft C# ("C-Sharp").

using System;

class HelloWorld
{
public static int Main(String[] args)
{
Console.WriteLine("Hello, World!");
return 0;
}
}
Back to index

C-Windows

 

/* Hello world in C for MS-Windows */

#include <windows.h>

int PASCAL WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance, LPSTR CmdLine, int Show)
{
MessageBox(GetActiveWindow(), "Hello World!", "Hello Windows World", MB_OK);
return 0;
}
Back to index

C-X11-Athena

 

/* Hello World in C with X11 using Athena widgets */

#include <X11/Intrinsic.h>
#include <X11/StringDefs.h>
#include <X11/Xaw/Label.h>

main(int argc,char **argv)
{
XtAppContext app_context;
Widget toplevel,hello;

toplevel = XtVaAppInitialize(&app_context,"XHello",NULL,0,
&argc,argv,NULL,NULL);
hello = XtVaCreateManagedWidget("Hello World!",labelWidgetClass,
toplevel,(void*)0);

XtRealizeWidget(toplevel);

XtAppMainLoop(app_context);
return 0;
}
Back to index

CAML-Light

 

(* Hello World in CAML Light *)

let hello =
print_string "Hello World!";
;;
Back to index

Clean

 

// Hello World in Clean

module hello

Start :: String
Start = "Hello World!/n"
Back to index

Clipper

 

// Hello World in Clipper

@ "Hello World"
Back to index

Cobol

 

       * Hello World in Cobol

*****************************
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
MAIN SECTION.
DISPLAY "Hello World!"
STOP RUN.
****************************
Back to index

Cocoa

 

// Hello World in Cocoa Obj-C (OS X)

#import <Foundation/Foundation.h>

int main (int argc, const char * argv[]) {
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

NSLog(@"Hello, World!");
[pool release];
return 0;
}
Back to index

ColdFusion

 

<!---Hello world in ColdFusion--->

<cfset message = "Hello World">
<cfoutput> #message#</cfoutput>
Back to index

CommandScript

 

#Hello World in Command Script 3.1
#Meta.Name: "Hello World"

#Block(Main).Start
echo "Hello World!"
#Block(Main).End
Back to index

Console-Postscript

 

%% Hello World in Console PostScript

serverdict begin 0 exitserver
/Courier findfont
48 scalefont setfont
22 22 moveto
(Hello World!) show
showpage

%% End
Back to index

D

 

// Hello World in D

void main()
{
printf("Hello World!/n");
}
Back to index

Darkbasic

 

` Hello World in Darkbasic

print "Hello World!"
wait key
Back to index

Dataflex

 

// Hello World in Dataflex Procedural

/tela

Hello world

/*

clearscreen

page tela
Back to index

dBase

 

* Hello World in dBase IV

? "Hello World!"
Back to index

dc

 

#!/usr/bin/dc
# Hello world! in dc (Unix desk calculator)
[Hello world!]p
Back to index

Delphi

 

// Hello World in Delphi
Program Hello_World;

{$APPTYPE CONSOLE}

Begin
WriteLn('Hello World');
End.
Back to index

Dialect

 

# Hello World in Dialect

print "Hello World"
Back to index

DML

 

! Hello World in DML (Gembase database language)

PROCEDURE_FORM MAIN
PRINT/NOWAIT ("Hello world")
END_FORM
Back to index

Dylan

 

module:			hello-world
author: Homer
copyright: (c) 1994 Homer
version: 1.0

// Hello World in DYLAN

define method main (#rest args)
princ("Hello world!");
end;

main();
Back to index

DynaMorph

 

<<!! Hello World in DynaMorph >>
<#setString foo {Hello World!}#>
<html>
<head>
<title>DynaMorph</title>
</head>
<body>
<#getString foo#>
</body>
</html>
Back to index

Eiffel

 

indexing "Hello World in Eiffel"

class HELLO

creation
run

feature

run is
local
io : BASIC_IO;
do
!!io;
io.put_string("Hello World!");
io.put_newline;
end; -- run

end; -- class HELLO
Back to index

Elan

 

(* Hello World in ELAN *)

putline ("Hello World!");
Back to index

Elliott

 

:: Hello World in Elliott Autocode
SETF PUNCH
SETR 1
1)TELEPRINTER
LINE
TITLE Hello World.;
STOP
START 1
Back to index

Erlang

 

%% Hello World in Erlang

-module(hello).

-export([hello/0]).

hello() ->
io:format("Hello World!~n", []).
Back to index

Euphoria

 

-- Hello World in Euphoria

puts(1, "Hello World!/n")
Back to index

Fjölnir

 

;; Hello World in Fjölnir (Icelandic programming language)

"hello" < main
{
main ->
stef(;)
stofn
skrifastreng(;"Halló Veröld!"),
stofnlok
}
*
"GRUNNUR"
;
Back to index

Focal

 

1.01 COMMENT HELLO WORLD IN FOCAL
1.02 TYPE "HELLO WORLD", !
1.03 QUIT
Back to index

Forth

 

' Hello World in Forth

: HELLO
." Hello World!" CR
;
Back to index

Fortran

 

C     Hello World in Fortran

PROGRAM HELLO
WRITE (*,100)
STOP
100 FORMAT (' Hello World! ' /)
END
Back to index

Fortran77

 

C     Hello World in Fortran 77

PROGRAM HELLO
PRINT*, 'Hello World!'
END
Back to index

FortranIV

 

       PROGRAM HELLO
c
C Hello World in Fortran IV (supposedly for a TR440)
c
WRITE (6,'('' Hello World!'')')
END
Back to index

Frink

 

// Hello World in Frink

println["Hello World!"]
Back to index

G-Code

Hello World in "G Code" for CNC machines.

Click here for a preview.

%
O1000
(PROGRAM NAME - HELLOWORLD)
(DATE=DD-MM-YY - 30-06-05 TIME=HH:MM - 19:37)
N10G20
N20G0G17G40G49G80G90
/N30G91G28Z0.
/N40G28X0.Y0.
/N50G92X0.Y0.Z0.
( 1/16 FLAT ENDMILL TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - .0625)
(CONTOUR)
N60T1M6
N70G0G90X0.Y1.A0.S5000M3
N80G43H1Z.5
N90Z.25
N100G1Z-.005F2.
N110Y0.F20.
N120G0Z.5
N130X.5
N140Z.25
N150G1Z-.005F2.
N160Y1.F20.
N170G0Z.5
N180Y.6106
N190Z.25
N200G1Z-.005F2.
N210X0.F20.
N220G0Z.5
N230X.6157Y.4712
N240Z.25
N250G1Z-.005F2.
N260X.6039Y.4135F20.
N270X.6Y.351
N280X1.1
N290G3X1.0098Y.6202R.4333
N300X.8941Y.6971R.2625
N310X.7255Y.6538R.1837
N320X.6157Y.4712R.332
N330G0Z.5
N340X.6Y.351
N350Z.25
N360G1Z-.005F2.
N370X.6039Y.2885F20.
N380G3X.7255Y.0481R.385
N390X.9745R.1853
N400X1.0843Y.2308R.332
N410G0Z.5
N420X1.2039Y0.
N430Z.25
N440G1Z-.005F2.
N450Y1.F20.
N460G0Z.5
N470X1.3098
N480Z.25
N490G1Z-.005F2.
N500Y0.F20.
N510G0Z.5
N520X1.4706Y.125
N530Z.25
N540G1Z-.005F2.
N550X1.502Y.0817F20.
N560G3X1.6176Y.0048R.2625
N570X1.7863Y.0481R.1837
N580X1.9118Y.351R.3957
N590X1.8216Y.6202R.4333
N600X1.7059Y.6971R.2625
N610X1.5373Y.6538R.1837
N620X1.4157Y.4135R.358
N630X1.4706Y.125R.4611
N640G0Z.5
N650X1.9853Y0.
N660Z.25
N670G1Z-.005F2.
N680X2.0422Y.1442F20.
N690G0Z.5
N700X2.5706Y1.
N710Z.25
N720G1Z-.005F2.
N730X2.6961Y0.F20.
N740X2.8216Y1.
N750X2.9451Y0.
N760X3.0706Y1.
N770G0Z.5
N780X3.2961Y.6538
N790Z.25
N800G1Z-.005F2.
N810X3.2608Y.6202F20.
N820G3X3.1745Y.2885R.4408
N830X3.2961Y.0481R.385
N840X3.5451R.1853
N850X3.6706Y.351R.3957
N860X3.5804Y.6202R.4333
N870X3.4647Y.6971R.2625
N880X3.2961Y.6538R.1837
N890G0Z.5
N900X3.7461Y.7019
N910Z.25
N920G1Z-.005F2.
N930Y0.F20.
N940G0Z.5
N950Y.3654
N960Z.25
N970G1Z-.005F2.
N980X3.7637Y.4663F20.
N990G2X3.8422Y.6587R.4948
N1000X3.9167Y.7019R.0929
N1010G1X4.0755
N1020G2X4.15Y.6587R.0929
N1030X4.1951Y.5769R.246
N1040G0Z.5
N1050X4.3255Y1.
N1060Z.25
N1070G1Z-.005F2.
N1080Y0.F20.
N1090G0Z.5
N1100X4.9275
N1110Z.25
N1120G1Z-.005F2.
N1130Y1.F20.
N1140G0Z.5
N1150X5.0314
N1160Z.25
N1170G1Z-.005F2.
N1180Y.2981F20.
N1190G0Z.5
N1200X4.9275Y.274
N1210Z.25
N1220G1Z-.005F2.
N1230X4.8941Y.1731F20.
N1240G2X4.7627Y.0192R.3255
N1250X4.5529Y.0481R.1862
N1260X4.4314Y.2885R.358
N1270X4.5176Y.6202R.4408
N1280X4.6333Y.6971R.2625
N1290X4.802Y.6538R.1837
N1300X4.8941Y.5288R.3457
N1310G1X4.9275Y.4279
N1320G0Z.5
N1330X5.0314Y.149
N1340Z.25
N1350G1Z-.005F2.
N1360Y0.F20.
N1370G0Z.5
N1380M5
N1390G91G28Z0.
N1400G28X0.Y0.A0.
N1410M30
%

Back to index


Gentee-simple

 

// Hello World in Gentee (simple version)

func hello<main> : @"Hello, World!"
Back to index

Gentee

 

// Hello World in Gentee

func hello <main>
{
print( "Hello, World!" )
getch()
}
Back to index

Gofer

 

-- Hello World in Gofer
-- Simple version

helloWorld:: String
helloWorld = "Hello World!/n"


-- Hello World in Gofer
-- Dialog version

helloWorld :: Dialogue
helloWorld resps = [AppendChan stdout "Hello world!"]
Back to index

Groovy

 

// Hello World in Groovy

println "Hello World"
Back to index

GynkoSoft

 

; Hello World in GynkoSoft
; Simple version
0.00 Protocol "Hello, World!"


; Hello World in GynkoSoft
; Dialog box output
0.00 Message "Hello, World!"
Back to index

Haskell

 

-- Hello World in Haskell

module Hello where
hello::String
hello = "Hello World!"
Back to index

HDX

 

# Hello World as bdehaldia.exe external command

proc hdx_info {} {
set ::Titel "&Hello World"
set ::Menu GMA
}

proc hdx_run {} {
tk_messageBox -type ok -message "Hello World!"
destroy .
}
Back to index

HP-41C

 

Hello World for the HP 41C. No comment character exists.

01 LBL "HELLO"
02 "HELLO WORLD"
03 AVIEW
Back to index

HP-48

 

<<
@ Hello World for the HP-48
@ << and >> are one char each
"HELLO WORLD"
>>
Back to index
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值