Hello World程序样例 - 维基百科,自由的百科全书

以下是用不同编程语言写成的Hello World程序的列表:

Hello World的正確輸出示範
Hello World的正確輸出示範

打印到终端

[编辑]
trace("Hello, world!"); 

[1]

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]

 .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 
MsgBox(1,'','Hello, world!') 
BEGIN { print "Hello, world!" } 

[1]

Bash (或其他Unix Shell)

[编辑]
 echo 'Hello, world!' 

或者:

 printf 'Hello, world!\n' 

[1]

传统版 BASIC(例如 GWBASIC):

10 PRINT "Hello, world!" 20 END 

或:

10 PRINT "Hello, world!" 

或在提示符輸入:

? "Hello, world!" 

现代版 BASIC(例如 Quick BASIC):

Print "Hello, world!" 

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

? "Hello, world!" 
GET "LIBHDR"  LET START () BE $(     WRITES ("Hello, world!*N") $) 
++++++++++[>+++++++>++++++++++>+++>+<<<<-] >++.>+.+++++++..+++.>++.<<+++++++++++++++. >.+++.------.--------.>+.>. 
Print "Hello, world!" WaitKey 
print "Hello, world!" 
#include <stdio.h> int main(void) {    printf("Hello, world!\n");    return 0; } 

或者:

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

[1]

console.log 'Hello, world!' 

或者:

alert 'Hello, world!' 
#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]

int main() {     System::Control::WriteLine("Hello, world!"); } 
using System  class HelloWorldApp {     static void Main(string[] args)     {         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!");      } } 
      IDENTIFICATION DIVISION.       PROGRAM-ID. HELLO-WORLD.        ENVIRONMENT DIVISION.        DATA DIVISION.        PROCEDURE DIVISION.       DISPLAY "Hello, world!".       STOP RUN. 

[1]

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

[1]

@echo Hello, world! 

對於MS-DOS 3.0或更低版本:

echo off cls echo 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 

[1]

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

Flowgorithm

[编辑]
." Hello, world!" CR 

[1]

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

[1]

package main  import "fmt"  func main() {     fmt.Println("Hello, world!") } 


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]

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

或者:

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

该代码适用于浏览器控制台以及Node.js等服务器端运行环境。

console.log("Hello, World!"); 
println("Hello, world!") 
;直接输出 "hello, world"  ;或者 (format t "hello, world~%") 
print "Hello, world!" 

[1]

(=<`#9]~6ZY327Uv4-QsqpMn&+Ij"'E%e{Ab~w=_:]Kw%o44Uqp0/Q?xNvL:`H%c#DD2^WV>gY;dts76qKJImZkj
disp('hello world!') 
 Hello[] := Print["Hello World!"]  Hello[] 

[1]

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 
<..直接输出..> Hello, world!  <..或者..>  <.   // 不带换行   ?  "Hello, world!"    // 或者    // 带换行   ?? 'Hello, world!' .> 
#import <Foundation/Foundation.h>  int main(int argc, const char * argv[]) {     @autoreleasepool {         NSLog(@"Hello, World!");     }     return 0; } 

[1]

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

[1]

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

Perl 5.10(含)以後版本:

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

[1]

#!/usr/local/bin/pike int main() {     write("Hello, world!\n");     return 0; } 
Test: procedure options(main);     declare My_String char(20) varying initialize('Hello, world!');     put skip list(My_String); end Test; 
goal     write("hello,world!"). 

適用於Python 2:

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

適用於Python 2.6, 2.7, 3:

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

[1]

彩蛋输出Hello World:

#!/usr/bin/env python import __hello__ 
say "Hello, world!" 
#!/usr/bin/ruby puts "Hello, world!" 

[1]


fn main() {     println!("Hello, world!"); } 


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

(需要至少一行输入)

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

Seed7

[编辑]
$ include "seed7_05.s7i";    const proc: main is func     begin       writeln("Hello, world!");     end func; 
Transcript show: 'Hello, world!' 
TextWindow.WriteLine("Hello, world!") 
    OUTPUT = "Hello, world!" END 

第一種

[编辑]
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 1.x:

println("Hello, World!") 

適用於Swift 2.x, 3:

print("Hello, World!") 
#!/usr/local/bin/tcl puts "Hello, world!" 

TScript

[编辑]
? "Hello, world!" 

Turing

[编辑]
put "Hello, world!" 

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

#!/bin/sh echo 'Hello, world!' 
#!/usr/bin/bc -q print "Hello World" quit
#!/usr/bin/env dc [Hello World]p

图形用户界面

[编辑]
display dialog "Hello, world!" 

或者:

display alert "Hello, world!" 
program HelloWorld; uses     Dialogs; begin     ShowMessage('Hello, World!'); end. 
<.   System.Ui.ShowMessage('Nuva', 'Hello, world!', ['OK']) .> 
Sub Main()     MsgBox "Hello, world!" End Sub 
? "Hello, world!" 

用一个程序

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 mainint argc, char *argv[] {     Gtk::Main kit(argc, argv);     HelloWorld helloworld;     Gtk::Main::run(helloworld); } 
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用于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是一种脚本语言。最广泛用于HTML文件中,也可以用在其它宿主环境下,比如Microsoft® Windows® 脚本宿主(WSH)和一些web服务环境。

用于HTML中:

// 弹出对话框 alert("Hello, World!"); // 在页面上显示 document.write("Hello, World!"); 

用于WSH中:

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

作为服务器端(Node.js):启动后,需要在浏览器中访问“http://127.0.0.1:8000/”查看。

const http = require('http');  http.createServer((request, response) => {   response.writeHead(200, { 'Content-Type': 'text/plain' });   response.end('Hello World!'); }).listen(8000);  console.log('Server running at http://127.0.0.1:8000/'); 

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

/font /Courier findfont 24 scalefont font setfont 100 100 moveto (Hello World!) show showpage 
SELECT ?h WHERE {    VALUES ?h { "Hello World" }  } 

[2]

 <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, ) 

服务器端

[编辑]

以下为Web服务端示例程序,程序启动后,需要用浏览器访问特定地址来查看结果。

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

[1]

或者簡單地寫成:
<%= "Hello, world!" %> 
<!-- 直接輸出... --> Hello World <!-- 或者 --> <html> <head>     <title> Hello World </title> </head> <body> Hello World </body> </html> 

[1]

package main  import (     "fmt"     "net/http" )  func helloHandler(w http.ResponseWriter, r *http.Request) {     fmt.Fprintf(w, "hello world") }  func main() {     http.HandleFunc("/", helloHandler)     http.ListenAndServe("0.0.0.0:8000", nil) } 
<%     out.print("Hello, world!"); %> 

[1]

或者简单地写成:

<%="Hello, world!"%> 

以下为Node.js环境:

const http = require('http');  http.createServer((request, response) => {   response.writeHead(200, { 'Content-Type': 'text/plain' });   response.end('Hello World!'); }).listen(8000);  console.log('Server running at http://127.0.0.1:8000/'); 

以下代码既可以作为服务器端运行,显示在用户浏览器上,也可以在终端中直接运行,输出到终端中:

<?php     echo 'Hello, world!';     // 或者     print 'Hello, world!'; ?> 

或者

<?= "Hello World!"?> 

參見

[编辑]

參考文獻

[编辑]

外部連結

[编辑]