一聚教程网:一个值得你收藏的教程网站

热门教程

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

时间:2022-06-25 07:39:51 编辑:袖梨 来源:一聚教程网

介绍

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

使用标准C函数优点:

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

随机数(rand)

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

#include 
#include 
int main()
{
 for (int i=0; i<10; i++)
 {
 printf("%dn", rand()%100);
 }
}

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

#include 
#include 
#include 
int main()
{
 srand(time(NULL));
 for (int i=0; i<10; i++)
 {
 printf("%dn", rand()%100);
 }
}

时间函数(time)

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

#include 
#include 
int main()
{
 time_t ts = time(NULL);
 printf("%dn", (int)ts);
}

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

#include 
#include 
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 
#include 
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("周%dn", time1.tm_wday);
 return 1;
}

热门栏目