C语言入门小册子
完成条件
实用函数库
实用函数库包含了一些杂项函数。它需要以下声明:
#include <stdlib.h>
有用的函数包括:
atof( <string> )
:将数字字符串转换为double
类型的值。atoi( <string> )
:将数字字符串转换为int
类型的值。atol( <string> )
:将数字字符串转换为long
类型的值。rand()
:生成伪随机整数。srand( <seed> )
:为随机数生成器设定种子,"seed" 是一个int
类型。exit( <status> )
:退出程序,"status" 是一个int
类型。system( <string> )
:告诉系统执行由 "string" 给出的程序。abs( n )
:返回int
类型参数n
的绝对值。labs( n )
:返回long
类型参数n
的绝对值。
函数 atof()
、atoi()
和 atol()
如果无法将给定的字符串转换为相应的值,则会返回 0。
时间和日期库
时间和日期库包括多种功能,其中一些较为冷僻且非标准。此库需要以下声明:
#include <time.h>
最基本的函数是 time()
,它返回自1970年1月1日午夜协调世界时(UTC)以来的秒数(不包括闰秒)。返回值为 time_t
类型(即 long
类型),在头文件中定义。
以下程序使用 time()
来实现一个以秒为单位的延迟:
/* delay.c */
#include <stdio.h>
#include <time.h>
void sleep(time_t delay);
void main()
{
puts("Delaying for 3 seconds.");
sleep(3);
puts("Done!");
}
void sleep(time_t delay)
{
time_t t0, t1;
time(&t0); // 获取当前时间
do
{
time(&t1); // 获取当前时间
}
while ((t1 - t0) < delay); // 判断时间差是否达到延迟时间
}
ctime()
函数将 time()
返回的时间值转换为时间和日期的字符串。以下小程序打印当前时间和日期:
/* time.c */
#include <stdio.h>
#include <time.h>
void main()
{
time_t *t;
time(t); // 获取当前时间
puts(ctime(t)); // 打印时间字符串
}
该程序会打印类似如下格式的字符串:
Tue Dec 27 15:18:16 1994
最后修改: 2025年01月27日 星期一 23:55