Welcome 微信登录

首页 / 操作系统 / Linux

Linux系统下用C语言编写2D图形游戏

Linux系统下用C语言编写2D图形游戏

在Linux系统下,不要以为C语言就只能写那种只有字符的控制台程序,别忘了,Linux系统有FrameBuffer(帧缓冲),只要显示器是彩色的,并且是linux系统的,就可以用C语言代码通过读写FrameBuffer里的数据在屏幕上绘制图形;图形嘛,有png库,用它的函数解码图片文件,得到图片数组,共有red、green、blue、alpha四种数组,alpha用于图片之间的组合,最终将RGB数组输出到FrameBuffer就能显示了;想要动态图形效果,...
Linux下的声音编程方法

Linux下的声音编程方法

(1)数字音频音频信号是一种连续变化的模拟信号,但计算机只能处理和记录二进制的数字信号,由自然音源得到的音频信号必须经过一定的变换,成为数字音频信号之后,才能送到计算机中作进一步的处理。数字音频系统通过将声波的波型转换成一系列二进制数据,来实现对原始声音的重现,实现这一步骤的设备常被称为模/数转换器(A/D)。A/D转换器以每秒钟上万次的速率对声波进行采样,每个采样点都记录下了原始模拟声波在某一时刻的状态,通常称之为样本(sample),而每一秒钟所采样的...
Linux下利用FreeType2的API实现字符的显示

Linux下利用FreeType2的API实现字符的显示

网上的FreeType2例子太少,能显示汉字的比较难找,C语言代码写的更难找,能找到的,基本上是被转载了N遍的同一个示例代码,基本上解决不了我的问题。于是乎,花费了不少时间才完成了这些代码;主要功能是:将传入的GB2312编码的char型字符串转换成图片数组并输出。主要原理是:将GB2312编码的char型字符串,转换成unicode编码的wchar_t型字符串;之后,利用FreeType2的API获取汉字的字体位图。代码看似不怎么复杂,之前找char转w...
研究mgaview的源码的成果

研究mgaview的源码的成果

看mgaview的源码,看了几遍之后,发现它的主要工作原理比较简单,大致如下:开始打开图片文件读取文件头判断图片类型使用相应的函数解码图片为数组调用相应的函数将数组写入至屏幕结束源码文件不怎么多,也不是很复杂,并且,它的源码还分类别存放在不同的文件夹:src/src/inputsrc/outputmgaview的主程序源码当然就在src目录,h格式的文件只是声明了一些全局变量,还定义了一些宏。input目录该目录里的源码,是用于解码各种格式的图片文件,看文...
Linux Gcc编译错误

Linux Gcc编译错误

Linux系统下的c编程与Windows有所不同,如果你在用gcc编译代码的时候提示‘for’ loop initial declarations are only allowed in C99 mode,可能就是因为你在loop循环比如for中使用未预先定义的变量,比如:for(int i=0;i<10;i++){}这种写法在vc里是没有错的,而子gcc就会提示错误,要求遵守c89标准,c89标准是不支持上述写法的。如果你非要这么写可以这样编译,使...
Qt中文乱码问题解决办法

Qt中文乱码问题解决办法

WOWCode的主体部分基本已经完成了,对于我自己来说,其实已经足以应付我的需要了,不过如果发布的话,实在还是拿不出手,因为很多地方还需要完善,一些对我自己来说多余的功能也没有完成,今天尝试将程序移植到了另一台机子上,却出现了中文乱码问题,记录之。也许你在用这个方法实现中文化,但它确实不够严谨#include<QTextCodec> intmain(intargc,char*argv[]) { QApplicationapp(argc,argv...
<< 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 >>