24种编程语言的Hello World程序
Hello,World,几乎是程序猿学习各种语言的第一个程序,心血来潮,有空拿主流开发语言如何实现,汇总并整理了下.包括大致快速了解下这门语言,开发,编译,环境搭建,运行,简单语言等。其实很多语言是由关联的,在当下,只掌握一门语言是不够的,比如说Python,语言简洁,开发快是其最大优点。但缺点是速度相对较慢,但C/C++/Java开发比较慢,程序运行速度比较快,如果想兼具两者的优点,就要写Python的扩展,这就涉及到(C,C++,Java,Fortan...)等语言,Python的GUI中Tkinter里面又涉及到TCL语言,所以就PYTHON开发来说,就必须熟悉C(CPython就是用C开发出来的),最好同时熟悉Java(Jython,Python的基于Java的实现)C++/C#(IronPython就是基于C#及.net的实现),还有不同语言间的通信可能会用到CORBAL,还有Python中可能会调用SHELL中的命令,或Perl的命令。所以,精通一到两门,熟悉多门语言是必须的。
下面用多种语言来实现打印Hello,World,包括所需要的环境(主要是如何编译,链接等),代码,语言说明,语言特色介绍.
并带附录:2014年编程语言总排行榜前二十名、Web开发语言排行榜前十名以及移动应用开发语言排行榜前十名
01. Java
环境: JDK1.7
复制代码 代码如下:
C:\>java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)
代码:
复制代码 代码如下:
#FileName: HelloWorld.java
public class HelloWorld #如果有public类的话,类名必须和文件同名,注意大小写
{
#Java入口程序,程序从此入口
public static void main(String[] args)
{
#向控制台打印一条语句
System.out.println("Hello,World!");
}
}
说明:
复制代码 代码如下:
D:\HelloWorld>javac HelloWorld.java #用javac编译成字节码文件(HelloWorld.class)
D:\HelloWorld>java HelloWorld #用java解释执行成特定平台的机器码
Hello,World!
02. C
环境: MinGW 或各种C/C++编译器
复制代码 代码如下:
D:\HelloWorld>gcc -v
Reading specs from C:/Perl/site/lib/auto/MinGW/bin/../lib/gcc/mingw32/3.4.5/specs
Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc --with-gnu-ld --with-gnu-as --host=min
gw32 --target=mingw32 --prefix=/mingw --enable-threads --disable-nls --enable-languages=c,c++,f77,ad
a,objc,java --disable-win32-registry --disable-shared --enable-sjlj-exceptions --enable-libgcj --dis
able-java-awt --without-x --enable-java-gc=boehm --disable-libgcj-debug --enable-interpreter --enabl
e-hash-synchronization --enable-libstdcxx-debug
Thread model: win32
gcc version 3.4.5 (mingw-vista special r3)
代码:
复制代码 代码如下:
#include <stdio.h>
int main() #main入口函数
{
printf("Hello,World!"); #printf函数打印
return 1; #函数返回值
}
说明:
复制代码 代码如下:
D:\HelloWorld>gcc HelloWorld.c -o output #文件名HelloWorld.c, -o输出文件名:output
HelloWorld.c:6:2: warning: no newline at end of file
D:\HelloWorld>output #直接运行输出文件
Hello,World!
复制代码 代码如下:
#如果未安装GCC,那么必须按照 http://gcc.gnu.org/install/上的详细说明安装GCC。
#为了在 Windows上安装GCC,需要安装MinGW. 为了安装 MinGW,请访问MinGW的主页www.mingw.org,
#进入MinGW下载页面,下载最新版本的 MinGW 安装程序,命名格式为 MinGW-<version>.exe
#当安装 MinWG时,至少要安装gcc-core、gcc-g++、binutils和MinGW runtime,但是一般情况下都会安装更多其他的项。
#添加您安装的 MinGW 的bin子目录到您的 PATH 环境变量中,这样您就可以在命令行中通过简单的名称来指定这些工具。
#当完成安装时,就可以从Windows命令行上运行gcc、g++、ar、ranlib、dlltool和其他一些GNU工具。
03. C++
环境: MinGW 或 各种C++编译器
头文件后缀名:.h, .hpp, .hxx
源文件后缀名:.cpp, .c++, .cxx, .cc, .C
代码:
复制代码 代码如下:
#include <iostream> //std::cout要用到的头文件
#include <stdio.h> //标准输入输出头文件
int main()
{
printf("Hello,World!--Way 1\n"); //printf语句打印
puts("Hello,World!--Way 2"); //puts语句
puts("Hello," " " "World!--Way 3"); //字符串拼接
std::cout << "Hello,World!--Way 4" << std::endl; //C++教科书上写法
return 1; //作为注释
}
说明:
复制代码 代码如下:
D:\HelloWorld>g++ HelloWorld.c++ -o output //源文件后缀也可为.cpp, .C
D:\HelloWorld>output
Hello,World!--Way 1
Hello,World!--Way 2
Hello,World!--Way 3
Hello,World!--Way 4
04. Python
环境: Python 2.x 或 Python 3.x
复制代码 代码如下:
D:\HelloWorld>python
Python 2.7.4 (default, Apr 6 2013, 19:55:15) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
代码:
复制代码 代码如下:
print "Hello,World!" #Python 2.x
Hello,World!
> print("Hello,World!") #Python 3.x
Hello,World!
说明:
1. 在Python 3.x中,print语句是函数,所以为print()
2. 也可以在写在.py文件,同样执行.
3. python2.6及以上版本和python3.x基本相同,也同样可以使用print()来打印
05. C#
环境: Windows
复制代码 代码如下:
d:\HelloWorld>csc -v
Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.4927
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.
代码:
复制代码 代码如下:
//FileName: HelloWorld.cs
using System;
class TestApp
{
public static void Main()
{
Console.WriteLine("Hello,World!");
Console.ReadKey();
}
}
//执行如下:
d:\HelloWorld>csc HelloWorld.cs
Microsoft (R) Visual C# 2005 Compiler version 8.00.50727.4927
for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727
Copyright (C) Microsoft Corporation 2001-2005. All rights reserved.
d:\HelloWorld>HelloWorld.exe
Hello,World!
说明:
C#其实和Java非常相像,刚才用的是命令行方式,需要设置环境变量,可以参考下面:
https://www.jb51.net/article/67171.htm
如果是直接下载Microsoft Visual Studio的话,就可以再IDE中用快捷键编译,运行
06. PHP
环境: XAMPP 1.8.3 环境搭建指南:http://www.cnblogs.com/wangkangluo1/archive/2011/07/19/2110943.html
代码:
复制代码 代码如下:
<!DOCTYPE html>
<body>
<"Hello,World!"; //打印语句
echo "The first php program!"; //打印语句
echo phpinfo(); //phpinfo()系统函数,输出环境信息
"//img.jbzj.com/file_images/article/201506/201563130316665.png" alt="" />
说明:
复制代码 代码如下:
#PHP(Hypertext Preprocessor)。
#PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言
#PHP语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。
#PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。
#与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;
#与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,成分利用了服务器的性能;
#PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,
#其他用户在一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。
#PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。
07. JavaScript
环境: node.js 或 jaxer
node下载链接: http://nodejs.org/download/ 按提示,下载自己想要的文件即可。
复制代码 代码如下:
D:\>node -v
v0.10.33
代码:
复制代码 代码如下:
var sys = require("sys"); #导入需要的sys模块
sys.puts("Hello,World!"); #调用里面的puts函数来打印字符串
说明:
复制代码 代码如下:
D:\>node HelloWorld.js #node + *.js,执行
Hello,World!
#JavaScript是Web的编程语言。
#所有现代的HTML页面都使用JavaScript。
#JavaScript 非常容易学。
08. Ruby
环境: ruby 1.9.3
复制代码 代码如下:
D:\HelloWorld>ruby -v
ruby 1.9.3p429 (2013-05-15) [i386-mingw32]
代码:
复制代码 代码如下:
#可用print语句打印
print "Hello,World!\n"
#可用puts语句打印
puts "Hello,World!\n"
#可以先声明一个变量,然后再用puts语句
a = "Hello,World!\n"
puts a
#可以先写个函数再调用
def say(name)
"Hello,#{name}"
end
puts say("World!")
说明:
复制代码 代码如下:
D:\HelloWorld>ruby HelloWorld.rb #运行方式类似Python,Perl
Hello,World!
Hello,World!
Hello,World!
Hello,World!
09. R
环境:
R-3.1.2-win(适用于32,64位),分别有相应的GUI
复制代码 代码如下:
C:\>R #安装好了之后,输入R后显示
R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet"
Copyright (C) 2014 The R Foundation for Statistical Computing
Platform: i386-w64-mingw32/i386 (32-bit)
R
'license()''licence()'
R.
'contributors()'
'citation()'RR
'demo()''help()'
'help.start()'HTML
'q()'R.
代码:
复制代码 代码如下:
print("Hello,World!")
说明:
R语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘.
下面安装下载比较详细的步骤:
https://www.jb51.net/os/RedHat/335436.html
10. SQL
环境: ORACLE SQL/PLUS
代码:
复制代码 代码如下:
SQL> select 'Hello,World!' from dual;
'HELLO,WORLD
------------
Hello,World!
说明:
还可以建一个表,插入,再查询,最后删除该表;
复制代码 代码如下:
SQL> CREATE TABLE MESSAGE (TEXT CHAR(15)); #创建表
INSERT INTO MESSAGE (TEXT) VALUES ('Hello, world!'); #插入表
SELECT TEXT FROM MESSAGE; #查询表
DROP TABLE MESSAGE; #删除表
Table created.
SQL>
1 row created.
SQL>
TEXT
---------------
Hello, world!
11. Perl
环境: Perl 5.16 或 MinGW
下载URL: http://www.activestate.com/activeperl/downloads
复制代码 代码如下:
D:\HelloWorld>perl -v
This is perl 5, version 16, subversion 3 (v5.16.3) built for MSWin32-x86-multi-thread
(with 1 registered patch, see perl -V for more detail)
Copyright 1987-2012, Larry Wall
Binary build 1603 [296746] provided by ActiveState http://www.ActiveState.com
Built Mar 13 2013 11:29:21
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.
代码:
复制代码 代码如下:
#!C:\Perl\bin #Windows平台下
#!/usr/bin/env perl #Linux环境下
print "Hello,World!\n"; #print("Hello,World")也可
输出结果
复制代码 代码如下:
D:\HelloWorld>perl HelloWorld.pl #类似于python file.py
Hello,World!
说明:
复制代码 代码如下:
#Perl 5.10及以上的版本,可以用
use 5.010;
say "Hello,World!";
12. HTML
环境: HTML 或 HTML 5.0
代码
复制代码 代码如下:
<!DOCTYPE html>
<html>
<body>
<h1>This is the first program!</h1>
<p>Hello,World!</p>
</body>
</html>
说明:
HTML4.0无论用那种浏览器,HTML5.0有些浏览器只支持部分功能,打可以打开。可用不同的编辑器编辑.
13. VB
环境:
复制代码 代码如下:
VBC version 8.0.5
D:\Learn\C>vbc -v
Microsoft (R) Visual Basic Compiler version 8.0.50727.5483
for Microsoft (R) .NET Framework version 2.0.50727.5485
Copyright (c) Microsoft Corporation. All rights reserved.
vbc : Command line warning BC2007 : unrecognized option 'v'; ignored
vbc : Command line error BC2008 : no input sources specified
代码:
复制代码 代码如下:
'FileName: HelloWorld.rb rb作为VB源文件的后缀
Module Hello
Sub Main() '程序人口函数
MsgBox("Hello,World!") '计算机屏幕上显示信息
End Sub 'End作为程序块结尾
End Module '单引号作为注释
说明:
复制代码 代码如下:
D:\>vbc HelloWorld.vb #vbs来编译,生成HelloWorld.exe可执行文件
Microsoft (R) Visual Basic Compiler version 8.0.50727.5483
for Microsoft (R) .NET Framework version 2.0.50727.5485
Copyright (c) Microsoft Corporation. All rights reserved.
D:\>HelloWorld
14. Scala
环境: scala-2.11.4.msi编译器
复制代码 代码如下:
d:\>scala
Welcome to Scala version 2.11.4 (Java HotSpot(TM) Client VM, Java 1.7.0_51).
Type in expressions to have them evaluated.
Type :help for more information.
scala> println("Hello,World!"); #可在交互式界面执行println语句,倒很想java
Hello,World!
代码:
复制代码 代码如下:
object HelloWorld
{
def main(args:Array[String])
{
println("Hello,World!");
}
}
//编译
d:\HelloWorld>scala HelloWorld.scala
Hello,World!
说明:
Scala是一门把面向对象和函数式编程思想加入静态类型中的编程语言,志在以简练、优雅及类型安全的方式来表达常用编程模式。它平滑地集成了面向对象和函数语言的特性,使Java和其他的程序员更富有成效。
15. Shell
环境: Linux/Unix平台,或安装了MinGW和MSYS的Windows平台
代码:
复制代码 代码如下:
#安装了MinGW和MSYS的Windows平台
D:\HelloWorld>echo "Hello,World!"
"Hello,World!"
#Linux平台下
#echo "Hello,World!" 或 printf "Hello,World!"
#如果是写在文件中:
chmod +x HelloWorld.sh
./HelloWorld.sh
说明:
#Shell诞生于Unix,是与Linux/Unix交互的工具,单独地学习Shell是没有意义的,必须先学习Linux/Unix。
#Shell虽然是Unix的第一个脚本语言,但它是相当优秀的。它结合了延展性与效率,持续保有独具的特色,并不断的被改良,功能更加强大。
#缺陷:Shell需要依赖其他程序才能完成大部分的工作;长处是:简洁的脚本语言标记方式,比C语言编写的程序执行更快、更有效率
16. Delphi
环境: Delphi 7
代码:
[File|New|Application]-->拖一个Button,一个Label
-->双击Button,编码如下:
复制代码 代码如下:
procedure TForm1.Button1Click(Sender: TObject);
begin
label1.Caption := 'Hello,World!';
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
end;
end.
说明:
Delphi,是Windows平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。
似乎很多人都觉得Delphi已经没落了、过时了(我身边有好多同事都没听过Delphi)。
但我不这么认为。“真正的程序员用c,聪明的程序员用Delphi”
经典无需多言,尤其是开发GUI程序,拖一下就OK了!!!
17. Fortran
环境:
Linux 或者 安装了MinGW的Windows平台
复制代码 代码如下:
D:\HelloWorld>gfortran -v
Using built-in specs.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=c:/mingw/bin/../libexec/gcc/mingw32/4.8.1/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.8.1/configure --prefix=/mingw --host=mingw32 --build=mingw32 --without-pic
--enable-shared --enable-static --with-gnu-ld --enable-lto --enable-libssp --disable-multilib --ena
ble-languages=c,c++,fortran,objc,obj-c++,ada --disable-sjlj-exceptions --with-dwarf2 --disable-win32
-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --with-gmp=/usr/src/pkg/gm
p-5.1.2-1-mingw32-src/bld --with-mpc=/usr/src/pkg/mpc-1.0.1-1-mingw32-src/bld --with-mpfr= --with-sy
stem-zlib --with-gnu-as --enable-decimal-float=yes --enable-libgomp --enable-threads --with-libiconv
-prefix=/mingw32 --with-libintl-prefix=/mingw --disable-bootstrap LDFLAGS=-s CFLAGS=-D_USE_32BIT_TIM
E_T
Thread model: win32
gcc version 4.8.1 (GCC)
代码:
复制代码 代码如下:
program hello
print *,"Hello World!"
end program hello
说明:
Fortran是最早出现的计算机语言,主要用于科学及工程计算领域,在这一点和Python相同
复制代码 代码如下:
D:\HelloWorld>gfortran -ffree-form HelloWorld.f -o out.exe #-ffree-form自由格式 -o后面是输出文件
#后缀名可以为.f, .F, .f90, .fpp. 如果是.f90结尾的文件,可以不用-ffree-form,因为该后缀结尾的文件默认是自由格式
D:\HelloWorld>out #如果是.f结尾的话,必须要加上,否则报错
Hello World!
18. TCL
环境: Linux 或 带有WinGW的Windows平台
代码:
复制代码 代码如下:
#命令行交互方式
D:\>tclsh
% puts "Hello,World!"
Hello,World!
% exit
D:>
#文件方式运行
#!/usr/local/bin/tcl
puts "Hello, world!"
D:\>tclsh HelloWorld.tcl
Hello,World!
说明:
1. 文件名后缀.tcl 编译器为tclsh(命令方式显示) 或 wish(GUI方式显示)
2. TCL(Tool Command Language)一种通用的脚本语言,几乎在所有平台都能运行,功能非常强大
19. FoxPro
环境: VFP9.0
代码:
复制代码 代码如下:
"Hello,World!"
说明:
尽管编译,运行都通过了,在GUI界面都不知道如何显示编译后的结果,还是在命令行界面里运行.FXP文件,显示的结果。
Visual FoxPro原名FoxBase,最初是由美国Fox Software公司于1988年推出的数据库产品,在DOS上运行,与xBase系列兼容。FoxPro是FoxBase的加强版,最高版本曾出过2.6。之后于1992年,Fox Software公司被Microsoft收购,加以发展,使其可以在Windows上运行,并且更名为 Visual FoxPro。 FoxPro比FoxBASE在功能和性能上又有了很大的改进,主要是引入了窗口、按纽、列表框和文本框等控件,进一步提高了系统的开发能力。
20. Ada
环境: ADA95的gnat编译器
复制代码 代码如下:
d:\HelloWorld>gnat
GNAT 4.8.1
Copyright 1996-2013, Free Software Foundation, Inc.
List of available commands
gnat bind gnatbind
gnat chop gnatchop
gnat clean gnatclean
gnat compile gnatmake -f -u -c
gnat check gnatcheck
gnat elim gnatelim
gnat find gnatfind
gnat krunch gnatkr
gnat link gnatlink
gnat list gnatls
gnat make gnatmake
gnat metric gnatmetric
gnat name gnatname
gnat preprocess gnatprep
gnat pretty gnatpp
gnat stack gnatstack
gnat stub gnatstub
gnat test gnattest
gnat xref gnatxref
代码:
说明:
Ada是一种表现能力很强的通用程序设计语言,它是美国国防部为克服软件开发危机,在经过除去#行获得最终处理过的文件后即可交由GNAT编译.
21. AWK
环境:
Linux/Unix平台,或安装了MinGW和MSYS的Windows平台
代码:
复制代码 代码如下:
[root@Linux ~]# echo | awk '{print "Hello,World!"}'
Hello,World!
[root@<span style="font-family: SimHei; font-size: 14px;">Linux</span><span style="font-size: 14px; font-family: SimHei;"> ~]# echo | awk 'BEGIN {print "Hello,World!"}'</span>
Hello,World!
[root@Linux ~]# awk 'BEGIN {print "Hello,World!"}'
Hello,World!
[root@Linux ~]# echo "hello world" | awk '{print}'
hello world
说明:
#AWK是一种优良的文本处理工具。它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。
#这种编程及数据操作语言(其名称得自于它的创始人(Alfred Aho,Peter Weinberger和Brian Kernighan姓氏的首个字母)的最大功能取决于一个人所拥有的知识。
#AWK提供了极其强大的功能:可以进行样式装入、流控制、数学运算符、进程控制语句甚至于内置的变量和函数。它具备了一个完整的语言所应具有的几乎所有精美特性。
22. Sed
环境: Linux/Unix
代码:
复制代码 代码如下:
# sed -ne '1s/.*/Hello, world!/p'
Hello,World! #第一行为输入
Hello, world! #
说明:
sed 流编辑器,和awk,正则表达式等一起,是编写Linux脚本中非常有用的工具.
23. Pascal
环境: Free Pacal IDE
代码:
复制代码 代码如下:
Program HelloWorld(output);
begin
writeln('Hello, world!')
{程序块的最后一条语句后不需要";" - 如果添加一个";"会在程序中增加一个“空语句”}
end.
说明:
Pascal程序开始于外部文件描述符作为参数的program关键字;然后跟着begin和end关键字封装的主要块。分号分区语句,句点终结整个程序(或单元)。Pascal源代码是大小写不敏感的。这里是一个非常简单的“Hello world”程序示例的源代码: (注:在实际编程中,通常可以省略第一行的output).其语法整理上来看,很像Delphi,基本上是一个等级的。另外,FPC编译器安装后,居然显示是乱码,看来还是要下载(Turbo Pascal)更经典些,不过听说Turbo Pascal下载比较难,再说,能不能在WIN*64位的平台编译也不知道,就下了个FPC用用.
24. Prolog
环境: SWI-PrologPortable 编译器
代码:
复制代码 代码如下:
write("Hello,World!").
#注意,句末有点号
说明:
Prolog(Programming in Logic)是一种逻辑编程语言。它建立在逻辑学的理论基础之上,最初被运用于自然语言等研究领域。现已广泛的应用在人工智能的研究中,可以用来建造专家系统、自然语言理解、智能知识库等
附录:
IEEE Spectrum 根据十多个数据来源,对各大编程语言的使用普及率进行了统计,公布了2014年编程语言总排行榜前二十名、Web开发语言排行榜前十名以及移动应用开发语言排行榜前十名。统计数据结果如下:
总排行榜:
Web开发排行TOP10:
01. Java
02. Python
03. C#
04. PHP
05. JavaScript
06. Ruby
07. Perl
08. HTML
09. Scala
10. Go
移动应用开发语言排行TOP10:
01. Java
02. C
03. C++
04. C#
05. JavaScript
06. Objective-C
07. Scala
08. Delphi
09. Scheme
10. ActionScript
以上统计数据分别来自Google搜索结果、Google趋势分析、推特、GitHub库、StackOverflow 问答、Reddit 文章、Hacker News、Career Builder、ice job以及IEEE 期刊论文等
下一篇:科学知识:同步、异步、阻塞和非阻塞区别