关闭
当前搜索:

【github myLocker】select监听多个fd,互斥锁保护终端交互

select监听多个fdselect用于多个fd的管理,检测哪个fd可读、可写,如果可读则接收消息(读),如果可写则输出消息(写)。 相关的函数:int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);void FD_CLR(int f...
阅读(234) 评论(0)

【github myLocker】线程切换调试,读写指针修改文件,socket 阻塞设置

线程切换调试gdb查看帮助:help(gdb) help List of classes of commands:aliases -- Aliases of other commands breakpoints -- Making program stop at certain points data -- Examining data files -- Specifying and examini...
阅读(266) 评论(0)

【github myLocker】线程返回值,重复引用头文件,二进制文件I/O

线程返回值子线程使用pthread_exit()向调用线程返回数值,函数原型:void pthread_exit(void *retval); 调用线程使用函数pthread_join()的第二个参数void **接收返回值。函数原型:int pthread_join(pthread_t thread, void **retval); 例子: main中创建一个线程pthTextCode,在新...
阅读(361) 评论(0)

SDL 加载显示JPEG图片

在《 SDL点、线、面及图像加载 》一文中自己用SDL显示JPEG失败,现在有了解决方案。 关键函数: SDL_rwops.h:extern DECLSPEC SDL_RWops * SDLCALL SDL_RWFromFile(const char *file, const char *mode);extern DECLSPEC void SDLCALL SDL_FreeRW(SDL_RWop...
阅读(754) 评论(0)

linux 静态库与共享库

本文笔记学习自《Professional Assembly Language》 静态库当我们将不同的函数写在不同的文件中,如果主程序调用这些函数,就需要相应的目标文件才能生成可执行文件。目标文件很多的话,不便于管理。我们可以将目标文件整合到一个存档文件中,编译器从存档文件挑选出需要的目标文件,这样的存档文件称之为库文件(library file)。 假设库文件的目标代码被编译到了主程序中,就称之为...
阅读(188) 评论(0)

AT&T 内联汇编

本文大部分内容学习自《Professional Assembly Language》内联汇编系统调用的参数存于EBX,ECX,EDX,ESI,EDI,EBP. 返回值存放在EAX寄存器中。 内联汇编(inline assembly)即在高级语言(C,C++)中加入汇编内容进行编码。 在高级语言中使用汇编常常有这些方法:单独用汇编编写函数然后在C程序中调用;用C写好函数,使用gcc的-S选项得到汇...
阅读(168) 评论(0)

SDL应用之三种字库

SFont 库sfont用大小写英文字母和符号进行内容显示,资源即是字体图片。 sfont下载:http://www.linux-games.com/sfont 我下载SFont 2.03后,解压并make,产生了许多的文件,其中包括三个SFont的测试文件,下面是SFontTest3的效果: 自己来写一个试试,将.h文件,.c文件,要使用的图片文件(我就直接使用24P_Copperpla...
阅读(512) 评论(0)

SDL点、线、面及图像加载

SDL画图系列之点,线,面点SDL库并没有提供直接画点的函数。不过在开发文档中提供了一个在任意视频模式下画出一个像素点的例子。我们可以写自己的画点函数。#include #include #include #define Uint32 unsigned int #define Uint16 unsigned short/* custom dra...
阅读(546) 评论(0)

SDL简单动画

动画是利用人类的视觉特点被创造出来的艺术品。图像在不同的时间和位置出现可以产生一定的视觉特效。SDL程序可以制作动画。想要制作出动画的效果,就需要把握好单位时间内出现的图片数量这一个因素。一般来说,一秒24帧可以得到流畅的动画场景。那么两张图像的时间间隔保持约为41666 microseconds. 下面例子中的GIF图片是GifCam.exe截屏制成。 制作一个简单动画: 红色的圆圈不断扩大...
阅读(579) 评论(4)

linux图形编程之SDL

SDL startSDL是编写跨平台游戏和多媒体应用的支持库,包含了对图形、声音、游戏杆、线程等支持,内容丰富、应用广泛。 ubuntu15.04上安装SDL: Source Code在 http://www.libsdl.org/download-1.2.php上,下载SDL-1.2.15.tar.gz。解压tar -zxvf SDL-1.2.15.tar.gz,在加压后的文件夹SDL-1.2...
阅读(1575) 评论(0)

进程间的通信

信号信号是软件中断的模拟,可以在人格时候发给进程,如果进程处于未执行状态,该信号就由内核保存,直到进程恢复执行再传递给它。 SIGKILL和SEGSTOP是应用程序无法捕捉和忽略的。 几个常用的快捷键和信号: ctrl + C —— SIGINT 中断信号 ctrl + \ —— SIGQUIT 退出信号 ctrl + Z —— SIGTSTP 进程挂起 functions about...
阅读(189) 评论(0)

unix环境编程练习 (2)

系统调用系统调用是由操作系统核心提供,运行于核心态;普通函数调用由库函数或者用户自定义,处于用户态。那些标准函数都是由系统调用完成的。 查看系统调用的接口:[edemon@CentOS ~]$ man 2 syscalls进程不能访问内核,系统调用则是接口,由他们告诉内核进程的请求是什么。 错误码errno: 1–34存在于: /usr/include/asm-generic/errno-bas...
阅读(380) 评论(0)

杂记 (6) —— vim, gcc, gdb, man

vi vistual block缩进选中vistual block, shift + > or <gdb无法调试最新gcc编译的程序$ gcc -g -o fcopy fcopy.c $ gdb fcopy GNU gdb (GDB) Red Hat Enterprise Linux (7.2-90.el6) Copyright (C) 2010 Free Software Foundation,...
阅读(329) 评论(0)

linux C —— 文件操作函数

chmodint chmod(const char *path, mode_t mode) 将文件read的文件权限变成所有者有读写权限,其他用户只有读的权限。这和shell指令中的chmod有相同的功效。#include #include #include /* for chmod */ #include <sys/types....
阅读(1775) 评论(0)

makefile学习 (2) —— autotools生成makefile

autotools生成makefile利用autotools系列工具可以快速生成makefile,我们输入目标文件,依赖文件,文件目录等信息即可。 我们需要保证有这些工具:aclocal, autoscan, autoconf, autoconf, autoheader, automake. 在安装的时候仅仅需要指令 yum install automake 或 sudo apt-get ins...
阅读(272) 评论(0)
21条 共2页1 2 下一页 尾页
    个人资料
    • 访问:331291次
    • 积分:8856
    • 等级:
    • 排名:第2517名
    • 原创:575篇
    • 转载:13篇
    • 译文:0篇
    • 评论:36条
    我的链接
    最新评论