linux中的c技术,Linux下C开发中几点技术小总结

本文探讨了Linux系统中时间管理和随机数生成在游戏开发中的重要性。time_t变量用于表示时间,涉及游戏的前后端同步、倒计时和心跳等功能。time.h头文件提供了如difftime、mktime等函数进行时间操作。此外,文章还介绍了rand函数在生成随机数方面的应用,以及如何通过宏RAND1实现特定范围内的随机数,用于数组元素的随机排列。
摘要由CSDN通过智能技术生成

1、.时间

Linux系统在时间上有比较多的东西。在游戏里,时间是一个非常重要的一个变量,涉及到前后端时间同步,游戏业务的倒计时,心跳等等的一系列功能点等等,如果能够灵活运用时间这个变量,最起码你要知道如下几个函数或者变量

time_t

这个变量其实是一个long型,表示的是从一个时间点(一般是1970年1月1日0时0分0秒)到那时的秒数。对,指标是秒数。

在time.h文件中还有一些其他以其为参数的函数

在time.h头文件中,我们还可以看到一些函数,它们都是以time_t为参数类型或返回值类型的函数:

double difftime(time_t time1, time_t time0);

time_t mktime(struct tm * timeptr);

time_t time(time_t * timer);

char * asctime(const struct tm * timeptr);

char * ctime(const time_t *timer);

下面为了更加精确

下面两个类型也会经常使用到

struct timeval *a_pstTv, struct timezone *a_pstTz

当我们调用

gettimeofday(&pstCtx->stCurr, NULL);

获取到当前的时间

2、随机数

随机数在程序里也是经常使用,随机出来一个数,使一些事情看起来很有随机性。

C语言目前提供的是rand函数。那我们如何使用呢,看如下宏

#define RAND1(range)  ((int)((double)(range)*rand()/(RAND_MAX+1.0)))

这个宏随机出了0到 rang-1中间的一个数。但我们想使用一个他来打乱我们的一个数组的顺序的时候,我们可以随机出它的下标,然后用来与某个具体的

元素比如,array[0]来交换。0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值