【c语言函数大全及详解】C语言作为一门基础且强大的编程语言,其丰富的库函数为开发者提供了极大的便利。掌握常用函数的用法,是提高编程效率的关键。本文对C语言中常用的函数进行总结,并以表格形式列出其功能、头文件及使用示例,帮助读者快速查阅和理解。
一、标准输入输出函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `printf()` | 格式化输出数据到标准输出 | ` | `printf("Hello, World!\n");` |
| `scanf()` | 从标准输入读取格式化数据 | ` | `scanf("%d", &num);` |
| `getchar()` | 读取一个字符 | ` | `char ch = getchar();` |
| `putchar()` | 输出一个字符 | ` | `putchar('A');` |
| `fgets()` | 从流中读取字符串 | ` | `fgets(str, 100, stdin);` |
| `fputs()` | 向流中写入字符串 | ` | `fputs("Hello", stdout);` |
二、字符串处理函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `strlen()` | 计算字符串长度 | ` | `int len = strlen("abc");` |
| `strcpy()` | 字符串复制 | ` | `strcpy(dest, src);` |
| `strcat()` | 字符串连接 | ` | `strcat(dest, src);` |
| `strcmp()` | 字符串比较 | ` | `if (strcmp(a, b) == 0)` |
| `strchr()` | 查找字符首次出现的位置 | ` | `char p = strchr(str, 'a');` |
| `strstr()` | 查找子字符串 | ` | `char p = strstr(str, "abc");` |
三、数学运算函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `abs()` | 返回整数绝对值 | ` | `int a = abs(-5);` |
| `sqrt()` | 平方根 | ` | `double x = sqrt(4.0);` |
| `pow()` | 幂运算 | ` | `double y = pow(2, 3);` |
| `sin()` | 正弦函数 | ` | `double s = sin(0.0);` |
| `cos()` | 余弦函数 | ` | `double c = cos(0.0);` |
| `tan()` | 正切函数 | ` | `double t = tan(0.0);` |
四、内存操作函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `malloc()` | 动态分配内存 | ` | `int arr = (int )malloc(10 sizeof(int));` |
| `calloc()` | 分配并初始化内存 | ` | `int arr = (int )calloc(10, sizeof(int));` |
| `free()` | 释放动态分配的内存 | ` | `free(arr);` |
| `realloc()` | 调整已分配内存大小 | ` | `arr = (int )realloc(arr, 20 sizeof(int));` |
| `memcpy()` | 内存拷贝 | ` | `memcpy(dest, src, size);` |
| `memcmp()` | 比较内存块 | ` | `int result = memcmp(buf1, buf2, size);` |
五、时间与日期函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `time()` | 获取当前时间 | ` | `time_t t = time(NULL);` |
| `ctime()` | 将时间转换为字符串 | ` | `char str = ctime(&t);` |
| `localtime()` | 将时间转换为本地时间结构体 | ` | `struct tm tm = localtime(&t);` |
| `mktime()` | 将本地时间结构体转换为时间戳 | ` | `time_t t = mktime(tm);` |
| `difftime()` | 计算两个时间之间的差值 | ` | `double diff = difftime(t2, t1);` |
六、文件操作函数
| 函数名 | 功能说明 | 头文件 | 示例 |
| `fopen()` | 打开文件 | ` | `FILE fp = fopen("file.txt", "r");` |
| `fclose()` | 关闭文件 | ` | `fclose(fp);` |
| `fread()` | 从文件中读取数据 | ` | `fread(buffer, size, count, fp);` |
| `fwrite()` | 向文件中写入数据 | ` | `fwrite(buffer, size, count, fp);` |
| `feof()` | 判断是否到达文件末尾 | ` | `while (!feof(fp))` |
| `fseek()` | 设置文件位置指针 | ` | `fseek(fp, 0, SEEK_SET);` |
总结
C语言的函数库非常丰富,涵盖了输入输出、字符串处理、数学计算、内存管理、时间控制以及文件操作等多个方面。合理利用这些函数,可以大大提升程序的开发效率和可维护性。建议在实际编程中多查阅相关文档,结合具体场景灵活运用。同时,注意函数的返回值和错误处理,避免因使用不当导致程序崩溃或数据错误。


