编程语言怎么跨平台运行
Java、C#、NET Framework和Mono是如何跨平台的?
首先,我们常说J***a、C#、C等语言实现跨平台,再有.NET Framework是微软开发的应用框架,只能应用在windows操作系统。为了使C#跨平台,微软推出了.Net Core,所以也说.Net Core跨平台。mono是Xamarin公司开发的跨平台.NET运行环境。
.NET Framework
.NET Framework构建的应用是跑在Windows、Windows Phone、Windows Server 和 Microsoft Azure上的,无法跑在linux和macOS上,它无法使C#跨平台。
Net Core
2016年二月微软推出了.Net Core,这个框架可以运行在三大主流系统上,即Linux、macOS和Windows。
J***a源程序先编译为与平台无关的字节码,然后由虚拟机(JVM)执行这些字节码,在将其转换为特定机器的机器码,要注意的是,针对不同的平台,有不同的JVM,也就是JVM不是平台通用的。另外,我们下载的JDK中包含了JRE,JRE包含了JVM。所以说JVM是J***a实现跨平台的核心。没有JVM就不可能实现跨平台。
要说.Net Core跨平台,先看看它都包含哪些组件。
.NET Runtime:也就是CoreCLR,即公共语言运行库,和J***a虚拟机一样也是一个运行时环境。
Framework Libraries,包括***类,文件系统处理类,XML处理类,异步Task类等。
C语言如何开发桌面GUI应用程序?
这里介绍一种非常简单的方法,使用GTK,一个基于C语言开发的跨平台图形工具包,可以直接使用C语言快速完成桌面GUI程序的开发,下面我简单介绍一下实现过程,主要内容如下:
1.首先,下载安装GTK,这里有2种方法,一种是按照GTK***的方法一步一步配置,还有一种是直接使用打包好的GTK-bundle包,这里以第二种方法为例,直接使用打包好的GTK-bundle包,这个可以直接在CSDN上找到下载,如下,解压这个zip文件到任意一个文件夹,之后需要将bin目录添加到环境变量中:
2.接着打开cmd窗口,输入一下“pkg-config --cflags gtk+-3.0”命令,如果输出如下,则说明配置成功:
这时你就可以测试一下GTK自带的示例,直接输入命令“gtk3-demo”就行,效果如下,就会弹出所有GTK自带的GUI示例:
3.最后就是我们在C语言中引入GTK,然后实现GUI程序开发了,这里以Code::Blocks软件为例,需要分别是设置一下编译器和链接器,如下:
打开Code::Blocks,依次点击菜单栏的“Settings”->"Compiler...",在编译器设置下面添加一行命令“`pkg-config --cflags gtk+-3.0`”,注意是反引号,主要作用是引入编译所需要的头文件:
纯C的很少,windows32 sdk和linux的gtk是为数不多的2个库。
现代基本没有用C开发gui的,C++是更好的选择,像qt mfc比win32好用得多。
开发效率更高的是python,tkinter wxwidget pyqt都很方便
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/21508.html