各种编程语言花式写 Hello, World!


C

// hello.c
#include <stdio.h>

int main() {
    printf("Hello, World!\n");
    return 0;
}

编译并运行(要求已安装 C 编译器(如 GCC、Clang 或 MSVC)):

gcc hello.c -o hello    # 编译生成可执行文件 hello(Linux/macOS)或 hello.exe(Windows)
./hello                 # Linux/macOS
.\hello.exe             # Windows

若使用 Clang:

clang hello.c -o hello && ./hello

Golang

// main.go
// 声明当前文件属于 main 包(程序入口包)
package main

// 导入 fmt 包(用于输入输出)
import "fmt"

// main 函数是程序的入口,无参数、无返回值
func main() {
    // 打印字符串到控制台
    fmt.Println("Hello, Golang!")
}

直接运行:go run main.go

编译成可执行文件(生成 hello-go 二进制文件):go build main.go

go build main.go          # 生成 main(Linux/macOS)或 main.exe(Windows)
./main                    # Linux/macOS
.\main.exe                # Windows

Java

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

编译运行:

javac Main.java           # 生成 Main.class
java Main                 # 注意:不带 .class 后缀

从 Java 11+ 开始,也可直接运行单文件(无需显式编译):

java Main.java

Perl

# hello.pl
print "Hello, World!\n";

直接运行:

perl hello.pl

Perl 脚本通常以 .pl 为扩展名,但非强制。


PHP

<?php
// hello.php
echo "Hello, World!\n";
?>

命令行运行(要求已安装 PHP CLI):

php hello.php

也可通过 Web 服务器访问(需配置 Apache/Nginx + PHP-FPM),但命令行是最简单的测试方式。


Python

# hello.py
print("hello world")

直接运行:python hello.py


Ruby

puts "hello world"

直接运行:ruby hello.rb


Rust

// main.rs
fn main() {
    println!("Hello, World!");
}

使用 Cargo(推荐):

cargo new hello_world     # 创建项目
cd hello_world
# 替换 src/main.rs 内容后:
cargo run                 # 自动编译并运行

直接编译运行(无 Cargo):

rustc main.rs             # 生成 main (Linux/macOS) 或 main.exe (Windows)
./main

Typescript

直接在终端执行:

// 方式1:直接在终端执行(需 ts-node)
console.log("Hello, World!");

或者编写编写一个函数(需要 ts-node):

// hello.ts
function sayHello(name: string) {
  console.log(`Hello, ${name}!`);
}

sayHello("World!");

先编译再运行:

tsc hello.ts             # 生成 hello.js
node hello.js

需要提前安装 ts-node:

npm install -g ts-node typescript
ts-node hello.ts

纯 TypeScript 不能直接由 Node.js 执行,必须通过 ts-node 或先编译为 JavaScript。