介绍

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;
}

欢迎加群交流:C/C++开发交流

C++:标准C函数(随机数,时间函数)的更多相关文章

  1. Mysql日期函数,时间函数使用的总结

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now();+--------------------- ...

  2. 0513JS数组内置方法、数学函数、时间函数

    |数组中常用的内置方法|-push()与pop()|--push()是往数组的尾部添加,同时返回新数组的长度 var attr = [1,2,3,4,5];var attr2 = [6,7,8,9,0 ...

  3. MySQL:日期函数、时间函数总结(MySQL 5.X)

    http://www.cnblogs.com/she27/archive/2009/01/16/1377089.html 原文:http://www.51sdj.com/phpcms/picture/ ...

  4. 【转】MySQL:日期函数、时间函数总结(MySQL 5.X)

    转自:http://www.cnblogs.com/she27/articles/1377089.html 一.MySQL 获得当前日期时间 函数1.1 获得当前日期+时间(date + time)函 ...

  5. 日期函数、时间函数总结(MySQL 5.X)

    一.MySQL 获得当前日期时间 函数1.1 获得当前日期+时间(date + time)函数:now()mysql> select now(); +---------------------+ ...

  6. MySQL日期函数、时间函数总结(MySQL 5.X)

    一.获得当前日期时间函数 1.1 获得当前日期+时间(date + time)函数:now() select now(); # :: 除了 now() 函数能获得当前的日期时间外,MySQL 中还有下 ...

  7. SqlServer 查询的几种方式以及数字函数、时间函数的应用总结(回归基础)

    --语法:select * from 表名 *表示查询所有字段数据 select * from Class select * from Student select * from RankingLis ...

  8. Oracle内置函数:时间函数,转换函数,字符串函数,数值函数,替换函数

    dual单行单列的隐藏表,看不见 但是可以用,经常用来调内置函数.不用新建表 时间函数 sysdate 系统当前时间 add_months 作用:对日期的月份进行加减 写法:add_months(日期 ...

  9. MySQL:日期函数、时间函数总结

    MySQL 获得当前日期时间 函数 获得当前日期+时间(date + time)函数:now() mysql> select now(); +---------------------+ | n ...

随机推荐

  1. kaptcha 配置

    问题所在: 这一段配置,不要写在 SpringMVC 文件中,要写在 Spring 配置文件! <!-- kaptcha 验证码 --> <bean id="captcha ...

  2. 配置Spring Data Redis

    事前准备 1.下载redis https://github.com/MicrosoftArchive/redis/releases/tag/win-3.2.100 2.下载redis可视化工具 htt ...

  3. 支持utf8的str_split函数

    <?php header("Content-type: text/html; charset=utf-8"); /** * 按字节数对字符串进行分片 * @param $st ...

  4. 10月清北学堂培训 Day 1

    今天是杨溢鑫老师的讲授~ T1 1 题意: n * m 的地图,有 4 种不同的地形(包括空地),6 种不同的指令,求从起点及初始的状态开始根据指令行动的结果. 2 思路:(虽然分了数据范围但是实际上 ...

  5. 报错:Table 'sell.hibernate_sequence' doesn't exist

    错误信息:Table 'sell.hibernate_sequence' doesn't exist 错误原因:实体主键没有配置主键自增长 完整配置如下 /**主键id*/ @Id @Generate ...

  6. 微信小程序开发步骤简述

    1.登陆微信的开发这平台 2.找到小程序开发选项进入,填写注册自己的小程序信息 3.下载相应的开发者工具 4.通过开发者工具把自己的项目代码上传,上传时会让你填写自己小程序的appid这样项目代码就和 ...

  7. CSAW Quals CTF 2017-scv

    目录 程序基本信息 程序漏洞 整体思路 exp脚本 内容参考 程序基本信息 64位动态链接程序,开启了栈溢出和数据段不可执行保护 程序漏洞 read函数很明显的栈溢出漏洞 整体思路 由于题目给了lib ...

  8. [Ubuntu] 移植Ubuntu16.04根文件系统到嵌入式平台

    CPU:RK3288 1.通过 ubuntu cdimage 下载 ubuntu16.04 内核,以下两种方式都可以 在 windows 系统网页中下载 http://cdimage.ubuntu.c ...

  9. 分布式文件上传 spring boot + fastdfs + dropzone

    1.首先安装fastDFS 参考链接: https://www.funtl.com/zh/spring-cloud-itoken-codeing/%E5%88%86%E5%B8%83%E5%BC%8F ...

  10. 字节组数(二进制流)、Base64、图片(文件)、二进制相互之间转换

    using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; ...