2022年c标准库文 .pdf

上传人:Che****ry 文档编号:27254767 上传时间:2022-07-23 格式:PDF 页数:26 大小:136.47KB
返回 下载 相关 举报
2022年c标准库文 .pdf_第1页
第1页 / 共26页
2022年c标准库文 .pdf_第2页
第2页 / 共26页
点击查看更多>>
资源描述

《2022年c标准库文 .pdf》由会员分享,可在线阅读,更多相关《2022年c标准库文 .pdf(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、c 标准库文库 .txt43风帆,不挂在桅杆上,是一块无用的布;桅杆,不挂上风帆,是一根平常的柱;理想,不付诸行动是虚无缥缈的雾;行动,而没有理想,是徒走没有尽头的路。44成功的门往往虚掩着,只要你勇敢去推,它就会豁然洞开。:诊断中只定义了一个带参的宏assert ,其定义形式如下:void assert (int 表达式 ) assert宏用于为程序增加诊断功能,它可以测试一个条件并可能使程序终止。在执行语句:assert(表达式 ); 时,如果表达式为0,则在终端显示一条信息:Assertion failed: 0, file 源文件名 , line 行号Abnormal program

2、termination 然后调用abort终止程序的执行。在中,带参宏assert是被定义为条件编译的,如果在源文件中定义了宏NDEBUG,则即使包含了头文件,assert宏也将被忽略 :字符类别测试在头文件 中定义了一些测试字符的函数。在这些函数中, 每个函数的参数都是整型int ,而每个参数的值或者为EOF ,或者为char 类型的字符。 中定义的标准函数列表如下: 中定义的函数函数定义函数功能简介int isalnum(int c) 检查字符是否是字母或数字名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -

3、- - - - - - 第 1 页,共 26 页 - - - - - - - - - int isalpha(int c) 检查字符是否是字母int isascii(int c) 检查字符是否是ASCII 码int iscntrl(int c) 检查字符是否是控制字符int isdigit(int c) 检查字符是否是数字字符int isgraph(int c) 检查字符是否是可打印字符int islower(int c) 检查字符是否是小写字母int isprint(int c) 检查字符是否是可打印字符int ispunct(int c) 检查字符是否是标点字符int isspace(in

4、t c) 检查字符是否是空格符int isupper(int c) 检查字符是否是大写字母int isxdigit(int c) 检查字符是否是十六进制数字字符int toupper(int c) 将小写字母转换为大写字母int tolower(int c) 将大写字母转换为小写字母有关 中定义的这些标准函数以及一些常用的非标准字符处理函数将在第十一章中进行详细地介绍。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 26 页 - - - - - - - - - :错误处理

5、 中定义了两个常量,一个变量。1、 EDOM 它表示数学领域错误的错误代码。2、 ERANGE 它表示结果超出范围的错误代码。3、 errno 这是一个变量,该值被设置成用来指出系统调用的错误类型。:整型常量在头文件 中定义了一些表示整型大小的常量。下面给出这些常量的字符表示以及含义,见下表。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 26 页 - - - - - - - - - 中定义的字符常量字符常量取值含义CHAR_BIT 8 char类型的位数CHAR_MAX

6、 255 或 127 char类型最大值CHAR_MIN 0 或-127 char类型最小值INT_MIN -32767 int类型最小值INT_MAX 32767 int类型最大值LONG_MAX 2147483647 long类型最大值LONG_MIN -2147483647 long类型最小值SCHAR_MAX 127 signed char 类型最大值SCHAR_MIN -127 signed char 类型最小值SHRT_MAX 32767 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - -

7、- - - 第 4 页,共 26 页 - - - - - - - - - short类型的最大值SHRT_MIN -32767 short类型的最小值UCHAR_MAX 255 unsigned char 类型最大值UINT_MAX 65535 unsigned int 类型最大值ULONG_MAX 4294967295 unsigned long 类型最大值USHRT_MAX 65535 unsigned short类型的最大值:地域环境在中,定义了7 个常量,一个结构,2 个函数。 1、常量的定义LC_ALL:传递给 setlocale的第一个参数,指定要更改该locale的哪个方面。LC

8、_COLLATE :strcoll和 strxfrm的行为。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 26 页 - - - - - - - - - LC_CTYPE :字符处理函数。LC_MONETARY: localeconv返回的货币信息。LC_NUMERIC:localeconv返回的小数点和货币信息。LC_TIME :strftime的行为。以上扩展成具有唯一取值的整型常数表达式,可作为setlocale的第一个参数。NULL :由实现环境定义的空指针。2、

9、struct lconv结构该结构用于存储和表示当前locale的设置。其结构定义如下:struct lconv char *decimal_point; char *thousands_sep; char *grouping; char *int_curr_symbol; char *currency_symbol; char *mon_decimal_point; char *mon_thousands_sep; char *mon_grouping; char *positive_sign; char *negative_sign; char int_frac_digits; char

10、frac_digits; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 26 页 - - - - - - - - - char p_cs_precedes; char p_sep_by_space; char n_cs_precedes; char n_sep_by_space; char p_sign_posn; char n_sign_posn; ; 3、函数struct Iconv *localeconv(void); 函数 localeconv将一个 struc

11、t Iconv类型的对象的数据成员设置成为按照当前地域环境的有关规则进行数量格式化后的相应值。char *setlocale(int category,char * locale); 函数 setlocale用于更改和查询程序的整个当前地域环境或部分设置。地域环境变量由参数category(上面定义的6 个常量 ) 和 locale指定。 :数学函数在 中定义了一些数学函数和宏,用来实现不同种类的数学运算。下面给出中标准数学函数的函数定义及功能简介,见下表。 中定义的函数函数定义名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名

12、师精心整理 - - - - - - - 第 7 页,共 26 页 - - - - - - - - - 函数功能简介double exp(double x); 指数运算函数, 求 e 的 x 次幂函数double log(double x) 对数函数ln(x) double log10(double x); 对数函数log double pow(double x, double y); 指数函数 (x 的 y 次方 ) double sqrt(double x); 计算平方根函数double ceil(double x); 向上舍入函数double floor(double x); 向下舍入函数

13、double fabs(double x); 求浮点数的绝对值double ldexp(double x, int n); 装载浮点数函数double frexp(double x, int* exp); 分解浮点数函数double modf(double x, double* ip); 分解双精度数函数double fmod(double x, double y); 求模函数double sin(double x); 计算 x 的正弦值函数double cos(double x); 计算 x 的余弦值函数名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - -

14、 - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 26 页 - - - - - - - - - double tan(double x); 计算 x 的正切值函数double asin(double x); 计算 x 的反正弦函数double acos(double x); 计算 x 的反余弦函数double atan(double x); 反正切函数1 double atan2(double y, double x); 反正切函数2 double sinh(double x); 计算 x 的双曲正弦值double cosh(double x); 计算 x 的

15、双曲余弦值double tanh(double x); 计算 x 的双曲正切值在标准库中,还有一些与数学计算有关的函数定义在其他头文件中。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 26 页 - - - - - - - - - :非局部跳转在头文件 中定义了一种特别的函数调用和函数返回顺序的方式。这种方式不同于以往的函数调用和返回顺序,它允许程序流程立即从一个深层嵌套的函数中返回。 中定义了两个宏:int setjmp(jmp_buf env); /*设置调转点 */

16、 和longjmp(jmp_buf jmpb, int retval); /*跳转 */ 宏 setjmp 的功能是将当前程序的状态保存在结构env , 为调用宏longjmp 设置一个跳转点。setjmp 将当前信息保存在env 中供 longjmp 使用。 其中 env 是 jmp_buf 结构类型的, 该结构定义为:typedef struct unsigned j_sp; unsigned j_ss; unsigned j_flag; unsigned j_cs; unsigned j_ip; unsigned j_bp; unsigned j_di; unsigned j_es; u

17、nsigned j_si; unsigned j_ds; jmp_buf1; 直接调用setjmp 时,返回值为0,这一般用于初始化(设置跳转点时) 。以后再调用longjmp宏时用 env 变量进行跳转。程序会自动跳转到setjmp 宏的返回语句处,此时setjmp 的返回值为非 0,由 longjmp 的第二个参数指定。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 26 页 - - - - - - - - - 下面通过例子来理解 中定义的这两个宏。例程 9-1 非

18、局部跳转演示。#include jmp_buf env; /*定义 jmp_buf 类型变量 */ int main(void) int value; value = setjmp(env); /*调用 setjmp ,为 longjmp 设置跳转点 */ if (value != 0) printf(Longjmp with value %dn, value); exit(value); /*退出程序 */ printf(Jump . n); longjmp(env,1); /*跳转到 setjmp 语句处 */ return 0; 本例程先应用setjmp 宏为 longjmp 设置跳转点

19、,当第一次调用setjmp 时返回值为0,并将程序的当前状态(寄存器的相关状态)保存在结构变量env 中。当程序执行到longjmp 时,系统会根据setjmp 保存下来的状态env 跳转到 setjmp 语句处,并根据longjmp 的第二个参数设置此时setjmp 的返回值。本例程的运行结果为:Jump . Longjmp with value 1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 26 页 - - - - - - - - - 一般地, 宏 setjm

20、p 和 longjmp 是成对使用的, 这样程序流程可以从一个深层嵌套的函数中返回。:信号头文件 中提供了一些处理程序运行期间引发的各种异常条件的功能,例如一些来自外部的中断信号等。在中只定义了两个函数:int signal(int sig, sigfun fname); 和int raise(int sig); signal函数的作用是设置某一信号的对应动作。其中参数sig 用来指定哪一个信号被设置处理函数。在标准C 中支持的信号如下表。标准 C 支持的信号取值说明默认执行动作使用的操作系统SIGABRT 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - -

21、- - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 26 页 - - - - - - - - - 异常中止中止程序 UNIX DOS SIGPPE 算术运算错误中止程序 UNIX DOS SIGILL 非法硬件指令中止程序 UNIX DOS SIGINT 终端中断中止程序 UNIX DOS SIGSEGV 无效的内存访问中止程序 UNIX DOS SIGTERM 中止信号中止程序 UNIX DOS 参数 fname 是一个指向函数的指针,当 sig 的信号发生时程序会自动中断转而执行 fname 指向的函数。执行完毕再返回断点继续执行程序。系统提供了两个常量

22、函数指针,可以作为函数的参数传递。它们分别是:SIG_DEF :执行默认的系统第一的函数。SIG_IGN:忽略此信号。raise函数的作用是向正在执行的程序发送一个信号,从而使得当前进程产生一个中断而转向信号处理函数signal执行。其中参数sig 为信号名称,它的取值范围同函数signal中的参数 sig 取值范围相同,见表9-6 。下面通过例子理解函数signal和 raise 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 26 页 - - - - - - -

23、- - 例程 9-2 signall和 raise函数演示#include #include void Print1(); void Print2(); int main() signal(SIGINT,Print1); printf(Please enter Ctr+c for interuptn) ; getchar(); signal(SIGSEGV,Print2); printf(Please enter any key for a interuptn); getchar(); raise(SIGSEGV); void Print1() printf(This is a SIGINT

24、interupt!n); void Print2() printf(This is a SIGSEGV interupt!n); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 14 页,共 26 页 - - - - - - - - - 本例程首先通过用户终端输入Ctrl+c产生一个终端中断,然后应用signal函数调用中断处理函数 Print1 ;再通过raise函数生成一个无效内存访问中断,并通过signal函数调用中断处理函数Print2 。本例程的运行结果为:Please e

25、nter Ctr+c for interupt C This is a SIGINT interupt! Please enter any key for a interupt a This is a SIGSEGV interupt! :可变参数表可变参数表 中的宏是用来定义参数可变的函数的。在C语言中,有些库函数或者用户自定义的函数的参数是可变的,常用省略号“, ”(例如库函数中的printf) ,定义这样的函数就要使用到中的宏。1、va_list 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - -

26、 - - - 第 15 页,共 26 页 - - - - - - - - - 用于保存宏va_start,va_arg 以及 va_end 所需信息的数据类型。2、中还定义了三个宏void va_start(va_list ap, parmN); type va_arg(va_list ap,type); void va_end (va_list ap); va_start的作用是初始化ap, 因此 va_start要在所有其它的va_开头的宏前面最先使用( 除了用 va_list定义变量外 ) , 后面的 va_copy, va_arg, va_end 都要使用到ap。 在一对 va_sta

27、rt和 va_end 之间不能再次使用va_start宏。其中,parmN 为.之前的最后一个参数。例如, printf函数定义为:printf(const char *format, .); 那么在 printf函数中的 va_start使用之后 , parmN 的值就等于 *format 。va_arg 的作用就是返回参数列表ap 中的下一个具有type 类型的参数 , 每次调用va_arg 都会修改 ap 的值 , 这样才能连续不断地获取下一个type 类型的参数。va_end 与 va_start构成了一个scope,va_end 标志着结束,va_end 之后 ap 就无效了。:公共

28、定义在头文件 中,指定了标准库中的公共定义。其中主要包括以下内容:1、NULL 空指针类型常量。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 26 页 - - - - - - - - - 2、offset(type,member-designator) 它是扩展iz-t类型的一个整型常数表达式。它的值为从type 定义的结构类型的开头到结构成员 member-designator的偏移字节数。3、ptrdiff_t 表示两指针之差的带符号整数类型。4、size_t 表

29、示由 sizeof运算符计算出的结果类型,它是一个无符号整数类型。5、wchar_t 它是一种整数类型,取值范围为在被支持的地域环境中最大扩展字符集的所有字符的各种代码,空字符代码值为0。:输入输出在头文件 中定义了输入输出函数,类型和宏。 这些函数、 类型和宏几乎占到标准库的三分之一。下面给出头文件中声明的函数以及功能简介,见下表。中声明的函数函数定义函数功能简介FILE *fopen(char *filename, char *type) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - -

30、- 第 17 页,共 26 页 - - - - - - - - - 打开一个文件FILE *fropen(char *filename, char *type,FILE *fp) 打开一个文件,并将该文件关联到fp 指定的流int fflush(FILE *stream) 清除一个流int fclose(FILE *stream) 关闭一个文件int remove(char *filename) 删除一个文件int rename(char *oldname, char *newname) 重命名文件FILE *tmpfile(void) 以二进制方式打开暂存文件char *tmpnam(cha

31、r *sptr) 创建一个唯一的文件名int setvbuf(FILE *stream, char *buf, int type, unsigned size) 把缓冲区与流相关int printf(char *format.) 产生格式化输出的函数int fprintf(FILE *stream, char *format, argument,.) 传送格式化输出到一个流中int scanf(char *format,argument,.) 执行格式化输入int fscanf(FILE *stream, char *format,argument.) 从一个流中执行格式化输入int fget

32、c(FILE *stream) 从流中读取字符char *fgets(char *string, int n, FILE *stream) 从流中读取一字符串名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 18 页,共 26 页 - - - - - - - - - int fputc(int ch, FILE *stream) 送一个字符到一个流中int fputs(char *string, FILE *stream) 送一个字符到一个流中int getc(FILE *stream

33、) 从流中取字符int getchar(void) 从 stdin流中读字符char *gets(char *string) 从流中取一字符串int putchar(int ch) 在 stdout上输出字符int puts(char *string) 送一字符串到流中int ungetc(char c, FILE *stream) 把一个字符退回到输入流中int fread(void *ptr, int size, int nitems, FILE *stream) 从一个流中读数据int fwrite(void *ptr, int size, int nitems, FILE *strea

34、m) 写内容到流中int fseek(FILE *stream, long offset, int fromwhere) 重定位流上的文件指针long ftell(FILE *stream) 返回当前文件指针int rewind(FILE *stream) 将文件指针重新指向一个流的开头int fgetpos(FILE *stream) 取得当前文件的句柄int fsetpos(FILE *stream, const fpos_t *pos) 定位流上的文件指针名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -

35、 - - - - - 第 19 页,共 26 页 - - - - - - - - - void clearerr(FILE *stream) 复位错误标志int feof(FILE *stream) 检测流上的文件结束符int ferror(FILE *stream) 检测流上的错误void perror(char *string) 系统错误信息在头文件 中还定义了一些类型和宏。:实用函数在头文件 中声明了一些实现数值转换,内存分配等类似功能的函数。下面给出头文件 中声明的函数以及功能简介,见下表。中声明的函数函数定义函数功能简介double atof(const char *s) 将字符串s

36、 转换为 double 类型int atoi(const char *s) 将字符串s 转换为 int类型名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 20 页,共 26 页 - - - - - - - - - long atol(const char *s) 将字符串s 转换为 long 类型double strtod (const char*s,char *endp) 将字符串s 前缀转换为double 型long strtol(const char*s,char *endp,

37、int base) 将字符串s 前缀转换为long 型unsinged long strtol(const char*s,char *endp,int base) 将字符串s 前缀转换为unsinged long型int rand(void) 产生一个0RAND_MAX 之间的伪随机数void srand(unsigned int seed) 初始化随机数发生器void *calloc(size_t nelem, size_t elsize) 分配主存储器void *malloc(unsigned size) 内存分配函数void *realloc(void *ptr, unsigned ne

38、wsize) 重新分配主存void free(void *ptr) 释放已分配的块void abort(void) 异常终止一个进程void exit(int status) 终止应用程序int atexit(atexit_t func) 注册终止函数char *getenv(char *envvar) 从环境中取字符串void *bsearch(const void *key, const void *base, size_t *nelem, size_t width, 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心

39、整理 - - - - - - - 第 21 页,共 26 页 - - - - - - - - - int(*fcmp)(const void *, const *) 二分法搜索函数void qsort(void *base, int nelem, int width, int (*fcmp)() 使用快速排序例程进行排序int abs(int i) 求整数的绝对值long labs(long n) 取长整型绝对值div_t div(int number, int denom) 将两个整数相除, 返回商和余数ldiv_t ldiv(long lnumer, long ldenom) 两个长整型数

40、相除, 返回商和余数有关上面列出的这些标准实用函数的功能、用法、例程等。:字符串函数在头文件 中定义了一些字符串函数。可以将它们分为两组。第一组函数名以str开头,主要进行字符串的操作;第二组函数名以mem开头,按照字符数组的方式操作对象。下面给出头文件中声明的函数以及功能简介,见下表。中声明的函数函数定义函数功能简介名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 22 页,共 26 页 - - - - - - - - - char *strcpy(char *str1, char

41、*str2) 串拷贝函数char *strncpy(char *d, char *s, int m) 串拷贝函数char *strcat(char *destin, char *source) 字符串拼接函数char *strncat(char *d, char *s,int n) 字符串拼接函数int strcmp(char *str1, char *str2) 串比较函数int strncmp(char *str1, char *str2, int m) 串比较函数char *strchr(char *str, char c) 在一个串中查找给定字符的第一个匹配之处char *strrch

42、r(char *str, char c) 在串中查找指定字符的最后一个出现size_t strspn(char *str1, char *str2) 在串中查找指定字符集的子集的第一次出现size_t strcspn(char *str1, char *str2) 在串中查找第一个给定字符集内容的段char *strpbrk(char *str1, char *str2) 在串中查找给定字符集中的字符char *strstr(char *str1, char *str2) 在串中查找指定字符串的第一次出现size_t strlen(char *cs) 求字符串的长度char *strerror

43、(int errnum) 返回指向错误信息字符串的指针char *strtok(char *str1, char *str2) 查找由在第二个串中指定的分界符分隔开的单词名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 23 页,共 26 页 - - - - - - - - - void *memcpy(void *d, void *s, unsigned n) 从源 s 中拷贝 n 个字节到目标d 中void *memmove(void *d, void *s, unsigned n

44、) 移动一块字节void *memcmp(void *s1, void *s2, unsigned n ) 比较两个串s2 和 s1 的前 n 个字节void *memchr(void *s, char ch, unsigned n) 在数组的前n 个字节中搜索字符void *memset(void *s, char ch, unsigned n) 将 s 的前 n 个字符替换为字符ch :日期与时间函数在头文件 中,声明了一些处理日期和时间的类型与函数。clock_t和 time_t是两个表示时间值的算术类型。结构 struct tm 存储了一个日历时间的各个成分。结构 tm 的成员的意义及

45、其正常的取值范围如下:struct tm int tm_sec; /*从当前分钟开始经过的秒数(0,61)*/ int tm_min; /*从当前小时开始经过的分钟数(0,59)*/ int tm_hour; /*从午夜开始经过的小时数(0,23)*/ int tm_mday; /*当月的天数 (1,31)*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 24 页,共 26 页 - - - - - - - - - int tm_mon; /*从 1 月起经过的月数(0,11)*/

46、 int tm_year; /*从 1900 年起经过的年数*/ int tm_wday; /*从本周星期天开始经过的天数(0,6)*/ int tm_yday; /*从今年 1 月 1 日起经过的天数(0,356)*/ int tm_isdst; /*夏令时标记 */ ; 如果夏令时有效,夏令时标记tm_isdst值为正; 若夏令时无效, tm_isdst值为 0;如果得不到夏令时信息,tm_isdst值为负。下面给出头文件 中声明的时间函数,见下表。 中声明的时间函数函数定义函数功能简介clock_t clock(void) 确定处理器时间函数time_t time(time_t *tp)

47、 返回当前日历时间double difftime(time_t time2, time_t time1) 计算两个时刻之间的时间差time_t mktime(struct tm *tp) 将分段时间值转换为日历时间值char *asctime(const struct tm *tblock) 转换日期和时间为ASCII 码char *ctime(const time_t *time) 把日期和时间转换为字符串struct tm *gmtime(const time_t *timer) 把日期和时间转换为格林尼治标准时间(GMT) struct tm *localtime(const time_

48、t *timer) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 25 页,共 26 页 - - - - - - - - - 把日期和时间转变为结构size_t strftime(char *s,size_t smax,const char *fmt, const struct tm *tp) 根据 fmt 的格式要求将*tp 中的日期与时间转换为指定格式。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 26 页,共 26 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁