C语言是怎么实现图形界面的?

NullExplode


C语言从底开始写图形界面(现在基本不采用)

FC十大中文游戏,有魂斗罗系列、赤色要塞、重装机兵、淘金者、超级马里奥兄弟、坦克大战、松鼠大作战、恶魔城、俄罗斯方块等等,这些FC经典游戏基本都是采用从底层直接写图形。

使用第三方库

用图形库是EsayX,支持VC++,VS,底层还是windows编程。操作简单,实用性方便。(近期写的电子相册如下)

特别说明:学习C/C++基础的时候,我们调用的是dos 窗口,windows自带的终端处理窗口,是没有属于自己的可视化窗口。


C语言基础


想必你问的是windows上用C实现图形界面,另外有些回答说C必须调用库才能实现图形界面。看得出,很多都是没有写过驱动的。首先,我们有一个显示器,显示器是一个个小点组成的。显示器有很多种接口,CPU/GPU通过这个接口(操作寄存器)和显示器通讯,在上面画上一个个点。然后点连成线,点变成圆。。。等等基本图形,把这些封装成函数,加之封装填充之类的函数,构成了最底层的GUI。后面又经过抽象,有图层等的概念。这就是图形库了。然后各种语言调用图形库完成显示。C语言完全可以从底开始写图形界面。但是没必要。


Suaig


如果不想那么复杂,最简陋的办法,C语言可以画线、圆、点、方等等。很多年前我尝试自己画过,其实玩玩也挺好玩的[呲牙]


智能时代新农人


去找本《编码》这书看下。理解显示器原理,开关电路,代码控制开关显示灯这些。


dade888


大二微机原理,上机考试就是使用汇编写一个图形输入输出界面,使用BIOS中断来画屏幕上的每个坐标、每个色彩、每个像素……直到现在也忘不了。


RaymondIT


语言就是语言,图形相关框架是操作系统提供的,操作系统提供这些图形api接口可以多种语言形式提供,比如win下实现ui界面,可以调用微软提供的platform adk中的c/c++接口,也可以用c#,vb封装的sdk接口来做,还可以用跨平台的QT来做ui,这些不同的sdk接口只是上层封装提供的接口不同罢了。


BinaryHead


C语言实现图形界面可以使用第三方图形库,目前市面上有很多图形库,你可以自行去网上查阅一下,我用图形库是EsayX,支持VC++6.0,VS2008-2019各个版本。


分享到:


相關文章: