class-notes/课件/C语言/C语言标准库函数.md
2025-02-06 22:43:19 +08:00

6.1 KiB
Raw Blame History

一、标准输入输出函数<stdio.h>

函数 功能 示例
printf 格式化输出 printf("Hello, %s!\n", "World");
scanf 格式化输入 scanf("%d", &num);
putchar 输出单个字符 putchar('A');
getchar 输入单个字符 char c = getchar();
puts 输出字符串并换行 puts("Hello World!");
gets 读取一行字符串 char str[100]; gets(str);
fopen 打开文件 FILE *fp = fopen("test.txt", "r");
fclose 关闭文件 fclose(fp);
fread 从文件读取数据 fread(buffer, 1, size, fp);
fwrite 向文件写入数据 fwrite(data, 1, size, fp);
fprintf 格式化写入文件 fprintf(fp, "Value: %d\n", value);
fscanf 格式化从文件读取数据 fscanf(fp, "%d", &value);

二、字符串处理函数<string.h>

函数 功能 示例
strlen 计算字符串长度 size_t len = strlen("Hello");
strcpy 复制字符串 strcpy(dest, src);
strncpy 复制指定长度字符串 strncpy(dest, src, 5);
strcat 拼接字符串 strcat(dest, src);
strncat 拼接指定长度字符串 strncat(dest, src, 5);
strcmp 比较两个字符串 strcmp(str1, str2);
strncmp 比较指定长度的字符串 strncmp(str1, str2, 5);
strchr 查找字符在字符串中的位置 char *p = strchr(str, 'a');
strstr 查找子串 char *p = strstr(str, "test");
strtok 分割字符串 char *token = strtok(str, ",");

三、数学函数<math.h>

函数 功能 示例
abs 计算整数绝对值 int value = abs(-10);
fabs 计算浮点数绝对值 double value = fabs(-3.14);
pow 计算幂 double result = pow(2.0, 3.0); // 2^3
sqrt 计算平方根 double result = sqrt(9.0);
ceil 向上取整 double result = ceil(3.14); // 4.0
floor 向下取整 double result = floor(3.14); // 3.0
round 四舍五入 double result = round(3.5); // 4.0
sin 计算正弦值 double result = sin(M_PI / 2); // 1.0
cos 计算余弦值 double result = cos(0); // 1.0
tan 计算正切值 double result = tan(M_PI / 4); // 1.0

四、内存操作函数<string.h>

函数 功能 示例
memset 设置内存的值 memset(buffer, 0, sizeof(buffer));
memcpy 内存拷贝 memcpy(dest, src, n);
memcmp 比较内存区域 memcmp(ptr1, ptr2, n);
memmove 内存区域移动 memmove(dest, src, n);

五、动态内存管理函数<stdlib.h>

函数 功能 示例
malloc 动态分配内存 int *p = (int *)malloc(10 * sizeof(int));
calloc 动态分配并初始化内存 int *p = (int *)calloc(10, sizeof(int));
realloc 重新分配内存大小 p = (int *)realloc(p, 20 * sizeof(int));
free 释放动态分配的内存 free(p);

六、时间与日期函数<time.h>

函数 功能 示例
time 获取当前时间戳 time_t t = time(NULL);
clock 获取程序运行时间 clock_t c = clock();
difftime 计算时间差 double diff = difftime(t1, t2);
localtime 转换为本地时间结构 struct tm *lt = localtime(&t);
strftime 格式化时间为字符串 strftime(buffer, 100, "%Y-%m-%d", lt);

七、随机数函数<stdlib.h>

函数 功能 示例
rand 生成随机数 int r = rand();
srand 设置随机数种子 srand((unsigned)time(NULL));

八、进程控制函数<stdlib.h>

函数 功能 示例
exit 退出程序 exit(0);
system 执行系统命令 system("dir");

九、其他常用函数

函数 功能 示例
atoi 字符串转整数 int num = atoi("123");
atof 字符串转浮点数 double num = atof("3.14");
itoa(非标准) 整数转字符串 itoa(123, buffer, 10);
qsort 快速排序 qsort(arr, n, sizeof(int), cmp);
bsearch 二分查找 bsearch(key, arr, n, sizeof(int), cmp);