Hello World 程序样例,常见语言差不多都有了



Hello World程序样例


目录

 [隐藏] 
  • 1 打印到终端
    • 1.1 ActionScript
    • 1.2 Ada
    • 1.3 汇编语言
      • 1.3.1 x86 CPU,GNU/Linux,NASM
      • 1.3.2 x86 AT&T、Gas
      • 1.3.3 x86 CPU、Windows、MASM32
      • 1.3.4 8086操作系统(nasm)
    • 1.4 ASP
    • 1.5 AutoIt
    • 1.6 AWK
    • 1.7 Bash (or sh)
    • 1.8 BASIC
    • 1.9 BCPL
    • 1.10 Brainfuck
    • 1.11 BlitzBasic
    • 1.12 BOO
    • 1.13 C
    • 1.14 C++
    • 1.15 C++/CLI
    • 1.16 C# (C Sharp)
    • 1.17 COBOL
    • 1.18 Common Lisp
    • 1.19 DOS批处理
    • 1.20 Linux Shell
    • 1.21 Eiffel
    • 1.22 Erlang
    • 1.23 Flowgorithm
    • 1.24 Forth
    • 1.25 Fortran
    • 1.26 HTML
    • 1.27 HQ9+
    • 1.28 INTERCAL
    • 1.29 Java
    • 1.30 JSP
    • 1.31 Lisp
    • 1.32 Lua
    • 1.33 Malbolge英语Malbolge
    • 1.34 Mathematica
    • 1.35 Metapost
    • 1.36 MIXAL
    • 1.37 Nuva
    • 1.38 Objective-C
    • 1.39 OCaml
    • 1.40 Pascal
    • 1.41 Perl
    • 1.42 PHP
    • 1.43 Pike
    • 1.44 PL/I
    • 1.45 Prolog
    • 1.46 Python
    • 1.47 REXX
    • 1.48 Ruby
    • 1.49 Sbyke Laborana
    • 1.50 Scheme
    • 1.51 Scratch
    • 1.52 sed
    • 1.53 Seed7
    • 1.54 Smalltalk
    • 1.55 Small Basic
    • 1.56 SNOBOL
    • 1.57 SQL
      • 1.57.1 第一种
      • 1.57.2 第二种
      • 1.57.3 第三种
    • 1.58 Swift
    • 1.59 Tcl
    • 1.60 TScript
    • 1.61 Turing
    • 1.62 UNIX-style shell
      • 1.62.1 bc
      • 1.62.2 dc
    • 1.63 Wiki
  • 2 GUI
    • 2.1 Delphi
    • 2.2 Nuva
    • 2.3 Visual Basic
    • 2.4 Visual FoxPro
    • 2.5 X11
    • 2.6 Java
    • 2.7 Java Applet
    • 2.8 JavaScript
    • 2.9 PostScript
    • 2.10 XAML
    • 2.11 易语言
  • 3 参见
  • 4 参考文献

打印到终端

ActionScript

trace("Hello, world!");

[1]

Ada

with TEXT_IO;
 
procedure HELLO is
begin
    TEXT_IO.PUT_LINE ("Hello, world!");
end HELLO;

[1]

汇编语言

x86 CPU,GNU/Linux,NASM

     section .data
 msg     db      'Hello, world!',0xA
 len     equ     $-msg
 
     section .text
 global  _start
 _start:
         mov     edx,len
         mov     ecx,msg
         mov     ebx,1
         mov     eax,4
         int     0x80
 
         mov     ebx,0
         mov     eax,1
         int     0x80

x86 AT&T、Gas

.data
        msg : .string "Hello, world!\n"
        len = . - msg
.text
.global _start

_start:
        movl $len, %edx
        movl $msg, %ecx
        movl $1  , %ebx
        movl $4  , %eax
        int $0x80

        movl $0  , %ebx
        movl $1  , %eax
        int $0x80

[1]

x86 CPU、Windows、MASM32

 .386
        .model   flat,stdcall
        option   casemap:none
;==========================================================
    include     windows.inc
    include     user32.inc
    includelib  user32.lib
    include     kernel32.inc
    includelib  kernel32.lib
;==========================================================
        .data
szCaption db "A MessageBox!", 0
szText db "Hello, world!", 0
;==========================================================
        .code
start:
    invoke   MessageBox, NULL, addr szText, addr szCaption, MB_OK
    invoke   ExitProcess, NULL
;==========================================================
    end  start

8086操作系统(nasm)

[BITS 16]
org 0x7c00
     mov ax,cs
     mov ds,ax
     mov es,ax
     call DispStr
     jmp $;End Hear
DispStr:
     mov ax, BootMessage
     mov bp, ax
     mov cx, 16;How long is the String
     mov ax, 0x1301
     mov bx, 0x000c
     mov dl, 0
     int 0x10
     ret
BootMessage: db "Hello, world!"
times 510-($-$$) db 0x0
dw 0xaa55; Bootable Mark

ASP

<% Response.Write("Hello, world!") %>

[1]

或者简单地写成:
<%= "Hello, world!" %>

AutoIt

MsgBox(1,'','Hello, world!')

AWK

BEGIN { print "Hello, world!" }

[1]

Bash (or sh)

 echo 'Hello, world!'

或者:

 printf 'Hello, world!\n'

[1]

BASIC

传统版 BASIC(例如 GWBASIC):

10 PRINT "Hello, world!"
20 END

或在提示符输入:

? "Hello, world!"

现代版 BASIC(例如 Quick BASIC):

PRINT "Hello, world!"

以下的语句,在 Quick BASIC 中同样有效:

? "Hello, world!"

BCPL

GET "LIBHDR"
 
LET START () BE
$(
    WRITES ("Hello, world!*N")
$)

Brainfuck

++++++++++[>+++++++>++++++++++>+++>+<<<<-]
>++.>+.+++++++..+++.>++.<<+++++++++++++++.
>.+++.------.--------.>+.>.

BlitzBasic

Print "Hello, world!"
WaitKey

BOO

print "Hello, world!"

C

#include <stdio.h>
 
int main(void)
{
   printf("Hello, world!\n");
   return 0;
}

或者:

#include <stdio.h>
int main(void)
{
   puts("Hello, world!");
   return 0;
}

[1]

C++

#include <iostream>
 
int main()
{
    std::cout << "Hello, world!" << std::endl;
    return 0;
}

或者:

#include <iostream>
using namespace std;
 
int main()
{
    cout << "Hello, world!" << endl;
    return 0;
}

[1]

C++/CLI

int main()
{
    System::Control::WriteLine("Hello, world!");
}

C# (C Sharp)

class HelloWorldApp
{
    static void Main(string[] args)
    {
        System.Console.WriteLine("Hello, world!");
    }
}

[1]

或者(仅用于Microsoft Windows)

class HelloWorldApp
{
     [DllImport("user32.dll")]
     static extern MessageBox(string title, string message);
     public static void Main()
     {
          MessageBox(null, "Hello, world!");
     }
}

或者(使用附加的Windows Forms)

using System.Windows.Forms;
class HelloWorldApp
{
     public static void Main()
     {
          MessageBox.Show("Hello, world!");
     }
}

COBOL

IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO-WORLD.
 
ENVIRONMENT DIVISION.
 
DATA DIVISION.
 
PROCEDURE DIVISION.
DISPLAY "Hello, world!".
STOP RUN.

[1]

Common Lisp

;直接输出
"Hello world!"
 
;或者
(format t "Hello world!~%")

[1]

DOS批处理

@echo Hello, world!

对于MS-DOS 3.0或更低版本:

echo off
cls
echo Hello, world!

Linux Shell

echo Hello, world!

[1]

Eiffel

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

[1]

Erlang

    -module(hello).
    -export([hello_world/0]).
 
    hello_world() -> io:fwrite("Hello, World!\n").

Flowgorithm

 
  


Forth

." Hello, world!" CR

[1]

Fortran

    WRITE(*,*) 'Hello, world!'
    STOP
    END

[1]

HTML

<!-- 直接輸出... -->
 
Hello World
 
<!-- 或者 -->
 
<html>
<head>
<title> Hello World </title>
</head>
<body>
Hello World
</body>
</html>

[1]

HQ9+

H

INTERCAL

PLEASE DO ,1 <- #13
DO ,1 SUB #1 <- #238
DO ,1 SUB #2 <- #112
DO ,1 SUB #3 <- #112
DO ,1 SUB #4 <- #0
DO ,1 SUB #5 <- #64
DO ,1 SUB #6 <- #238
DO ,1 SUB #7 <- #26
DO ,1 SUB #8 <- #248
DO ,1 SUB #9 <- #168
DO ,1 SUB #10 <- #24
DO ,1 SUB #11 <- #16
DO ,1 SUB #12 <- #158
DO ,1 SUB #13 <- #52
PLEASE READ OUT ,1
PLEASE GIVE UP

[1]

Java

public class Hello
{
    public static void main(String[] args)
    {
        System.out.println("Hello, world!");
    }
}

or in tinystruct2.0:

package tinystruct.examples;
 
import org.tinystruct.AbstractApplication;
import org.tinystruct.Application;
import org.tinystruct.ApplicationException;
import org.tinystruct.system.ApplicationManager;
 
public class hello extends AbstractApplication {
 
	@Override
	public void init() {
		// TODO Auto-generated method stub
		this.setAction("say", "say");
	}
 
	@Override
	public String version() {
		// TODO Auto-generated method stub
		return null;
	}
 
	public String say(String words){
		System.out.println(words);
		return words;
	}
 
	/**
	 * @param args
	 * @throws ApplicationException 
	 */
	public static void main(String[] args) throws ApplicationException {
		// TODO Auto-generated method stub
		// Praise to the Lord!
		ApplicationManager.install(new hello());
 
		// to print 'Hello World'
		ApplicationManager.call("say/Hello World", null); 			// Hello World
 
		// or...
		Application app=ApplicationManager.get( hello.class.getName()); 
		app.invoke("say", new Object[]{"<h1>Hello, World!</h1>"});	// <h1>Hello, World!</h1>
		app.invoke("say", new Object[]{"<h2>Bye!</h2>"});			// <h2>Bye!</h2>
 
		// or...
		// http://localhost:8080/?q=say/Hello World
                // https://github.com/m0ver/tinystruct2.0
	}
 
}

JSP

<%
    out.print("Hello, world!");
%>

[1]

或者简单地写成:

<%="Hello, world!"%>

Lisp

;直接输出
"hello, world"
 
;或者
(format t "hello, world~%")

Lua

print "Hello, world!"

[1]

Malbolge英语Malbolge

 ('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>}=<M:9wv6WsU2T|nm-,jcL(I&%$#"
 `CB]V?Tx<uVtT`Rpo3NlF.Jh++FdbCBA@?]!~|4XzyTT43Qsqq(Lnmkj"Fhg${z@>

Mathematica

 Hello[] := Print["Hello World!"]
 Hello[]

[1]

Metapost

beginfig(1);
draw (0,0)--(0,10);
draw (0,5)--(5,5);
draw (5,0)--(5,10);
draw (12,0)--(7,0)--(7,10)--(12,10);
draw (12,5)--(7,5);
draw (14,10)--(14,0)--(19,0);
draw (21,10)--(21,0)--(26,0);
draw (28,5)...(30.5,0)...(33,5)...(30.5,10)...cycle;
draw (38,10)--(39.25,0)--(40.5,10)--(41.75,0)--(43,10);
draw (45,5)...(47.5,0)...(50,5)...(47.5,10)...cycle;
draw (52,0)--(52,10);
draw (52,10)..(57,4)..(52,6.5);
draw (52,5)--(57,0);
draw (61,10)--(61,0)--(66,0);
draw (68,10)--(68,0)..(73,5)..cycle;
endfig;
end

MIXAL

TERM EQU 19 the MIX console device number
        ORIG   1000        start address
START OUT MSG(TERM) output data at address MSG
        HLT                halt execution
MSG ALF "MIXAL"
        ALF    " HELL"
        ALF    "O WOR"
        ALF    "LD   "
        END    START       end of the program

Nuva

<..直接输出..>
Hello, world!
 
<..或者..>
 
<.
  // 不带换行
  ?  "Hello, world!"
 
  // 或者
 
  // 带换行
  ?? 'Hello, world!'
.>

Objective-C

#import <Foundation/Foundation.h>
 
int main(int argc, const char * argv[])
{
    @autoreleasepool {
        NSLog(@"Hello, World!");
    }
    return 0;
}

[1]

OCaml

let main () =
    print_endline "Hello world!";;

Pascal

program Hello;{此行可以省略}
begin
    writeln('Hello, world!');
end.

[1]

Perl

#!/usr/bin/env perl
print "Hello, world!\n";

Perl 5.10(含)以后版本:

#!/usr/bin/env perl
use 5.010;
say "Hello, world!";

[1]

PHP

<?php
    echo 'Hello, world!';//通常使用這個,比 print 少一個字元
    print 'Hello, world!';
?>

或者

<?= "Hello World!"?>

Pike

#!/usr/local/bin/pike
int main()
{
    write("Hello, world!\n");
    return 0;
}

PL/I

Test: procedure options(main);
    declare My_String char(20) varying initialize('Hello, world!');
    put skip list(My_String);
end Test;

Prolog

goal
    write("hello,world!").

Python

适用于Python 2:

#!/usr/bin/env python
print "Hello, world!"

适用于Python 3:

#!/usr/bin/env python
print("Hello, world!")

[1]

REXX

say "Hello, world!"

Ruby

#!/usr/bin/ruby
puts "Hello, world!"

[1]

Sbyke Laborana

INIT min:1001
Om:"Hello, world!"

Scheme

(display "Hello, world!")
(newline)

Scratch

 
  


sed

(需要至少一行输入)

sed -ne '1s/.*/Hello, world!/p'

Seed7

$ include "seed7_05.s7i";
 
  const proc: main is func
    begin
      writeln("Hello, world!");
    end func;

Smalltalk

Transcript show: 'Hello, world!'

Small Basic

TextWindow.WriteLine("Hello, world!")

SNOBOL

    OUTPUT = "Hello, world!"
END

SQL

第一种[编辑]

CREATE TABLE MESSAGE (TEXT CHAR(15));
INSERT INTO MESSAGE (TEXT) VALUES ('Hello, world!');
SELECT TEXT FROM MESSAGE;
DROP TABLE MESSAGE;

第二种

SELECT 'hello, world';

第三种

print 'hello,world!'

Swift

println("Hello, World!")

Tcl

#!/usr/local/bin/tcl
puts "Hello, world!"

TScript

? "Hello, world!"

Turing

put "Hello, world!"

UNIX-style shell

程序中的/bin/sh可改为您使用的shell

#!/bin/sh
echo 'Hello, world!'

bc

#!/usr/bin/bc -q
print "Hello World"
quit

dc

#!/usr/bin/env dc
[Hello World]p

Wiki

<includeonly>Hello, World!</includeonly><br/>

GUI

Delphi

program HelloWorld;
uses
    Dialogs;
begin
    ShowMessage('Hello, World!');
end.

Nuva

<.
  System.Ui.ShowMessage('Nuva', 'Hello, world!', ['OK'])
.>

Visual Basic

MsgBox "Hello, world!"
'或者
Print "Hello, world!"

Visual FoxPro

? "Hello, world!"

X11

用一个程序

xmessage 'Hello, world!'

使用Qt

#include <QApplication>
#include <QLabel>
 
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QLabel label("Hello, world!");
    label.show();
    return app.exec();
}

C 和 GTK+

#include <gtk/gtk.h>
 
int main(int argc, char * args[])
{
    GtkWidget * win, * label;
    gtk_init(& argc, & args);
 
    label = gtk_label_new("Hello, world!");
    win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_container_add(GTK_CONTAINER(win), label);
    gtk_widget_show_all();
 
    gtk_main();
 
    return 0;
}

用C++和gtkmm 2

#include <iostream>
#include <gtkmm/main.h>
#include <gtkmm/button.h>
#include <gtkmm/window.h>
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::slot(*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);
}

Java

import java.awt.*;
import java.awt.event.*;
 
public class HelloFrame extends Frame 
{
    HelloFrame(String title) 
    {
        super(title);
    }
    public void paint(Graphics g)
    {
        super.paint(g);
        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);
    }
}

Java Applet

Java Applet用于HTML文件。

HTML代码:

<html>
<head>
<title>Hello World</title>
</head>
<body>
HelloWorld Program says:
<applet code="HelloWorld.class" width="600" height="100">
</applet>
</body>
</html>

Java代码:

import java.applet.*;
import java.awt.*;
 
public class HelloWorld extends Applet 
{
    public void paint(Graphics g) 
    {
        g.drawString("Hello, world!", 100, 50);
    }
}

JavaScript

JavaScript是一种脚本语言。最广泛用于HTML文件中,也可以用在其它宿主环境下,比如Microsoft® Windows® 脚本宿主(WSH)和一些web服务环境。

用于HTML中:

alert("Hello, World!");
//或者
document.write("Hello, World!");

用于WSH中:

WScript.Echo("Hello, World!");

PostScript

PostScript是一种专门用来创建图像的语言,常用于打印机。

/font /Courier findfont 24 scalefont
font setfont
100 100 moveto
(Hello World!) show
showpage

XAML

 <Page
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="XAMLSample.Page1"
 >
  <Button Click="HelloWorld" Name="Button1">Click Here</Button>
 </Page>

接着使用 C# 建置

 using System;
 using System.Windows;
 using System.Windows.Controls;
 
 namespace XAMLSample
 {
  public partial class Page1 : Page
  {
    void HelloWorld(object sender, RoutedEventArgs e)
    {
      MessageBox.Show("Hello, world!");
    }
  }
 }

易语言

 .版本 2
 .程序集 窗口程序集1
 .子程序 __启动窗口_创建完毕
 信息框 (“Hello, World!”, 0, )


原文来自

http://zh.wikipedia.org/wiki/Hello_World%E7%A8%8B%E5%BA%8F%E6%A0%B7%E4%BE%8B

你可能感兴趣的:(Hello World 程序样例,常见语言差不多都有了)