Chapter1 C标准库
1.stdio.h
-
sprintf
常用于数字(hex、dec、bin)转字符串ascii输出,可以使用占位符格式化输出
2.string.h
-
memcpy
//destin-- 指向用于存储复制内容的目标数组,类型强制转换为 void* 指针。 //source-- 指向要复制的数据源,类型强制转换为 void* 指针。 //n-- 要被复制的字节数 void *memcpy(void *destin, void *source, unsigned n);
strcpy和memcpy的区别
1、复制的内容不同。strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组、整型、结构体、类等。
2、复制的方法不同。strcpy不需要指定长度,它遇到被复制字符的串结束符"\0"才结束,所以容易溢出。memcpy则是根据其第3个参数决定复制的长度。
3、用途不同。通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy
-
memset
3.stdint.h
-
stdint.h 的主要目的是:
提供固定宽度的整数类型(如 int8_t、int16_t、uint8_t、uint16_t 等),确保其大小在不同平台上一致。
定义与平台无关的整数类型(如 int_least8_t、int_fast16_t 等),用于优化性能和内存使用。
提供最大宽度整数类型(如 intmax_t、uintmax_t),用于表示最大可能的整数。
4.time.h
对于需要更高精度和分辨率的时间获取需求,可以使用clock_gettime函数。clock_gettime函数提供了纳秒级的时间分辨率,适用于更加严格的时间同步和测量场景。