摘要: linux下的时间函数 http://blog.chinaunix.net/uid-25808509-id-2578465.html我们在编程中可能会经常用到时间,比如取得系统的时间(获取系统的年、月、日、时、分、秒,星期等),或者是隔一段时间去做某事,那么我们就用到一些时间函数。linux下存储时间常见的有两种存储方式,一个是从1970年到现在经过了多少秒,一个是用一个结构来分别存储年月日时分秒的。time_t 这种类型就是用来存储从1970年到现在经过了多少秒,要想更精确一点,可以用结构struct timeval,它精确到微妙。structtimeval{longtv_sec;/*秒*/ 阅读全文
posted @ 2013-01-11 14:55 vanishfan 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 有用的函数,感谢发贴那位兄弟。。。。。。atof(将字符串转换成浮点型数)表头文件 #include <stdlib.h>定义函数 double atof(const char *nptr);函数说明atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('')才结 束转换,并将结果返回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分,如123.456或123e-2。返回值 返回转换后的浮点型数。附加说明 atof()与使用strtod(nptr,(char**)NULL)结果相同。 阅读全文
posted @ 2013-01-11 14:41 vanishfan 阅读(1794) 评论(0) 推荐(0) 编辑
摘要: 【每个进程调用的动态库中的全局变量都是一个拷贝,各自进程需要自己去初始化各自的全局,而且操作全局也互补影响】【比如banker.c,在sghall里面有个初始化,在游戏进程里也有初始化,需要两者共享变量得用共享内存或者其他进程间通讯】Linux共享库(动态库)与进程之间共享全局变量可行性分析概念就不多说了,下面主要讨论一下在进程中使用共享库(动态库)声明的全局变量的问题:网上有一篇介绍在主程序中使用动态链接库里的全局变量的文章,可能会给人一些误导。首先,在主程序中可以使用动态链接库中的全局变量是正确的,不可否认的,但这需要在程序编译链接时就要把动态库加上,并在需要使用的程序中使用extern声 阅读全文
posted @ 2013-01-10 12:30 vanishfan 阅读(10140) 评论(0) 推荐(0) 编辑
摘要: 通常库分为:静态库,共享库,动态加载库,。下面分别介绍。一、 静态库:1.概念: 静态库就是一些目标文件的集合,以.a结尾。静态库在程序链接的时候使用,链接器会将程序中使用 到函数的代码从库文件中拷贝到应用程序中。一旦链接完成,在执行程序的时候就不需要静态库了。 由于每个使用静态库的应用程序都需要拷贝所用函数的代码,所以静态链接的文件会比较大。2.创建与应用: 首先创建库文件libhello.c #include void hello() { printf("hello, welcome to library world!\n"); } 创建头文件libhello.h v. 阅读全文
posted @ 2013-01-10 12:26 vanishfan 阅读(551) 评论(0) 推荐(0) 编辑
摘要: bcopy没有返回值memcpy返回void*,指向拷贝的目标地址。bcopy、bzero和bcmp是传统BSD的函数,属于POSIX标准,是在linux下的函数;mem*是C90(以及C99)标准的C函数。区别在于,如果你打算把程序弄到一个符合C90/C99,但是不符合POSIX标准的平台时,后者比较有优势。 阅读全文
posted @ 2013-01-09 15:03 vanishfan 阅读(513) 评论(0) 推荐(0) 编辑
摘要: struct _PlayerInfo{ int UID; short sex; //0男 1女 int score; char playerName[40]; short nameLen;};注意不要写成char *playerName[40];GameRooms *shmaddress[50];这样写是因为里面存的的确是GameRooms的地址。所以不要漏加* 阅读全文
posted @ 2013-01-09 10:48 vanishfan 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 搜索所有除了包含XXX的行 阅读全文
posted @ 2013-01-08 11:57 vanishfan 阅读(156) 评论(0) 推荐(0) 编辑
摘要: socket关闭close和shutdownsocket关闭有2个close,shutdown他们之间的区别:close-----关闭本进程的socket id,但链接还是开着的,用这个socket id的其它进程还能用这个链接,能读或写这个socket idshutdown--则破坏了socket 链接,读的时候可能侦探到EOF结束符,写的时候可能会收到一个SIGPIPE信号,这个信号可能直到socket buffer被填充了才收到,shutdown还有一个关闭方式的参数,0 不能再读,1不能再写,2 读写都不能。======================================= 阅读全文
posted @ 2012-12-27 20:43 vanishfan 阅读(919) 评论(0) 推荐(0) 编辑
摘要: 如果该文件有更新会实时显示出来 阅读全文
posted @ 2012-12-27 16:36 vanishfan 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 1.读计算机研究生最好要有实际际开发经验 这里所说的“有实际开发工作经验”通常应该具备:1)你已经认为C++和汇编语言都是很简单的语言,并能够自如地运用; 2)你完全理解STL为什么这么重要;3)你能够在30分钟之内想到正确的五子棋AI算法设计思路和方向;4)你能够独立地解决所有的编译与链接问题,哪怕你从来没有遇到的问题,你也不需要询问任何人;5)英文网站是你的首要信息来源; 6)能够读懂英语写成的国际标准,比如NTFS磁盘格式标准。 7)你经常站在集合论的角度思考算法问题;8)能够理解一个简单的驱动程序,能够理解一个简单3D交互程序;9)你能够认识到线性代数和概率论在实际编程工作中的极端重要 阅读全文
posted @ 2012-12-18 16:28 vanishfan 阅读(311) 评论(1) 推荐(0) 编辑