C++标准C函数在各平台编译结果都相同

时间:2021-05-20

介绍

ANSI组织定义了C标准和标准库函数。

使用标准C函数优点:

使用标准C函数在任何平台上都支持,使得同一个源码,在Windows编译运行的结果和Linux上编译运行结果相同,无需更改代码。

随机数(rand)

产生指定范围内随机数(1~100)

#include <stdio.h>#include <stdlib.h>int main(){ for (int i=0; i<10; i++) { printf("%d\n", rand()%100); }}

每次运行会发现得到的是个随机数一样,为了解决这个问题,使用srand设置一个种子(seed),每次启动保证种子不同。

#include <stdio.h>#include <stdlib.h>#include <time.h>int main(){ srand(time(NULL)); for (int i=0; i<10; i++) { printf("%d\n", rand()%100); }}

时间函数(time)

获取当前时间戳(单位:s),时间戳即为距离1970-01-01 00:00:00的秒数

#include <stdio.h>#include <time.h>int main(){ time_t ts = time(NULL); printf("%d\n", (int)ts);}

通过时间戳获取年月日,时分秒,周几

#include <stdio.h>#include <time.h>int main(){ time_t ts = time(NULL); tm time = *localtime(&ts); int year = time.tm_year + 1900; int month = time.tm_mon + 1; int day = time.tm_mday; int hour = time.tm_hour; int min = time.tm_min; int sec = time.tm_sec; int week = time.tm_wday ; return 1;}

通过年月日,时分秒,获取time_t 时间戳

#include <stdio.h>#include <time.h>int main(){ //时间为2017-07-15 21:38:30 tm time = {0}; time.tm_year = 2017 - 1900; time.tm_mon = 7 -1; time.tm_mday = 15; time.tm_hour = 21; time.tm_min = 38; time.tm_sec = 30; time_t ts = mktime(&time); //获得该天为周几 tm time1 = *localtime(&ts); printf("周%d\n", time1.tm_wday); return 1;}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章