C语言 百分网手机站

C语言为什么定义了这么多不同的时间标准

时间:2020-10-13 13:39:59 C语言 我要投稿

C语言为什么定义了这么多不同的时间标准

  由于所使用的计算机和编译程序不同,你可能会发现定义了许多时间标准。尽管有多种时间标准会带来一定的方便,但把它们都写出来显然要花很长的时间,并且把它们都存储起来也会多占硬盘空间。那么,为什么还要这样呢?其中有好几个原因,具体情况如下,更多消息请关注应届毕业生网!

C语言为什么定义了这么多不同的时间标准

  首先,C是一种可移植的语言。因此在一台计算机上编写的C程序应该能在另一台计算机上运行。通常,当用C语言在一个新的系统上进行开发时,必须把专门在某个系统上使用的那些函数添加到C语言中。此后,当C程序需要从一个系统移植到另一个系统中时,将具体命令添加到目标系统中通常就很容易了。这样一来,同一函数的不同版本就都汇集在C语言中了。这种情况就曾多次发生在时间函数身上。

  其次,时间(和日期)可能有多种不同的用法。你可能想按秒计时,可能想从一个具体的时间和日期开始计时。此外,你还可能想按最小的时间间隔计时,以确保计时尽可能精确。对于计时,没有一种最好的方法。当你开始编写一个涉及到时间的程序时,你必须先把可以使用的函数分析一遍,并确定哪一种函数最适合于你的目的。如果你要用多种方法处理时间,你就可能要使用多种不同的时间格。

  【拓展阅读】

  C语言中关于时间的`函数的概念

  在C/C++中,通过学习许多C/C++库,你可以有很多操作、使用时间的方法。但在这之前你需要了解一些“时间”和“日期”的概念,主要有以下几个:

  1. 协调世界时,又称为世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time,GMT)。比如,中国内地的时间与UTC的时差为+8,也就是UTC+8。美国是UTC-5。

  2. 日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点对不同的编译器来说会有所不同,但对一个编译系统来说,这个标准时间点是不变的,该编译系统中的时间对应的日历时间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间”,但是无论你在哪一个时区,在同一时刻对同一个标准时间点来说,日历时间都是一样的。

  3. 时间点。时间点在标准C/C++中是一个整数,它用此时的时间和标准时间点相差的秒数(即日历时间)来表示。

  4. 时钟计时单元(而不把它叫做时钟滴答次数),一个时钟计时单元的时间长短是由CPU控制的。一个clock tick不是CPU的一个时钟周期,而是C/C++的一个基本计时单位。

  我们可以使用ANSI标准库中的time.h头文件。这个头文件中定义的时间和日期所使用的方法,无论是在结构定义,还是命名,都具有明显的C语言风格。

  c语言入门经典小程序

  1 、 /* 输出 9*9 口诀。共 9 行 9 列, i 控制行, j 控制列。 */

  #include "stdio.h"

  main()

  {int i,j,result;

  for (i=1;i<10;i++)

  { for(j=1;j<10;j++)

  {

  result=i*j;

  printf("%d*%d=%-3d",i,j,result);/*-3d 表示左对齐,占 3 位 */

  }

  printf("\n");/* 每一行后换行 */

  }

  }

  2 、 /* 古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔

  子都不死,问每个月的兔子总数为多少?

  兔子的规律为数列 1,1,2,3,5,8,13,21....*/

  main()

  {

  long f1,f2;

  int i;

  f1=f2=1;

  for(i=1;i<=20;i++)

  { printf("%12ld %12ld",f1,f2);

  if(i%2==0) printf("\n");/* 控制输出,每行四个 */

  f1=f1+f2; /* 前两个月加起来赋值给第三个月 */

  f2=f1+f2; /* 前两个月加起来赋值给第三个月 */

  }

  }

【C语言为什么定义了这么多不同的时间标准】相关文章:

1.C语言变量定义

2.C语言宏定义

3.C语言标准定义的32个关键字

4.C语言自定义函数

5.关于C语言宏定义的技巧

6.C语言变量的定义与使用

7.C语言程序中函数的定义

8.标准c语言笔试题

9.简单讲解C语言中宏的定义与使用