Hello world-program

Hello, world! er et simpelt computerprogram, der demonstrerer nogle af de basale elementer i et programmeringssprog. Det eneste, programmet gør, er at udskrive på skærmen teksten "Hello, world!", og programmet er ofte det første, en programmør skriver, når han/hun er ved at lære et nyt sprog.[1]

Dialogboks med teksten "Hello World"
En udgave af "hello, world"-programmet i C skrevet i hånden på et stykke printerpapir af Brian W. Kernighan (1978).

Fra programmeringens spæde begyndelse har der altid eksisteret små programmer, som nye programmører har prøvet at skrive for at komme i gang med det aktuelle sprog. Brugen af "Hello, world!" er blevet indarbejdet med Kernighan og Ritchies klassiske bog The C Programming Language (1974), hvor programmet er det første eksempel på et program skrevet i sproget C. Udskriften i denne bog var "hello, world" (uden store bogstaver) og stammer fra Kernighans interne skrift til brug på Bell Laboratories fra samme år.[2]

Hvis det lykkes at skrive et "Hello, world"-program og få det til at virke, er der mange ting, der er på plads:

  • Syntaksen i programmet er korrekt.
  • Compileren virker.
  • Linkeren virker.
  • Det er muligt at programmere mod ydre enheder, f.eks. en skærm.

Betegnelsen "Hello, world!" bruges også generelt om testprogrammer, der viser, at et system eller en programmeringsteknik kan bruges. Et "Hello, world!"-program i denne betydning kan for eksempel læse "Hello, world!" fra en database og dermed vise, at den virker.

EksemplerRediger

AdaRediger

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

AlgolRediger

 'BEGIN'
    OUTSTRING(2,'('Hello, world!')');
 'END'

APLRediger

'Hello, world!'

BASICRediger

 10 PRINT "Hello world!"
 20 END

CRediger

 #include <stdio.h>
 #include <stdlib.h>
 
 int main(int argc, char **argv)
 {
        (void) argc;
        (void) argv;
        
        printf("Hello world!\n");
        
        return EXIT_SUCCESS;
 }

C#Rediger

using System;
 
class Program
{
   static void Main()
   {
       Console.WriteLine("Hello world!");
   }
}

C++Rediger

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

CILRediger

.assembly Hello{}
.assembly extern mscorlib {}
.method static void Main()
{
    .entrypoint
    .maxstack 1
    ldstr "Hello, world!"
    call void [mscorlib]System.Console::WriteLine(string)
    call string[mscorlib]System.Console::ReadLine()
    pop
    ret
}

COBOLRediger

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

EiffelRediger

 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

FORTRANRediger

    PROGRAM HELLO
      PRINT *, 'Hello, world!'
    END

GoRediger

import "fmt"
func main() {
    fmt.Printf("Hello, World!")
}

JavaRediger

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

Modula-2Rediger

 MODULE Hello;
 
 FROM InOut IMPORT WriteLn, WriteString;
 
 BEGIN
    WriteString ("Hello, world!");
    WriteLn
 END Hello.

PascalRediger

 program hello;
 begin
     writeln('Hello, world!');
 end.

PerlRediger

print "Hello world!\n";

PL/IRediger

Test: proc options(main) reorder;
  put skip edit('Hello, world!') (a);
end Test;

PHPRediger

<?php
   echo "Hello, world!";
?>

PrologRediger

:- write('Hello world'),nl.

PythonRediger

print "Hello, World!"

Python3Rediger

print("Hello, World!")

Seed7Rediger

$ include "seed7_05.s7i";

const proc: main is func
 begin
   writeln("Hello, world!");
 end func;

SimulaRediger

BEGIN
    OutText("Hello, world!");
    OutImage;
END

SmalltalkRediger

Transcript show: 'Hello, world!'; cr

SwiftRediger

print("Hello world")

Visual Basic .NETRediger

Class HelloWorldApp 
    Shared Sub Main() 
        System.Console.WriteLine("Hello, World!") 
    End Sub
End Class

ReferencerRediger

  1. ^ Langbridge, James A. (2013), Professional Embedded ARM Development, John Wiley & Sons, s. 74, hentet 16. april 2019. 
  2. ^ Kernighan, Brian W. (1974), Programming in C – A Tutorial (PDF), Bell Laboratories, hentet 16. april 2019. 

Eksterne henvisningerRediger

 Stub
Denne it-artikel er kun påbegyndt. Hvis du ved mere om emnet, kan du hjælpe Wikipedia ved at udvide den.