【C语言】常用函数汇总表

【C语言】常用函数汇总表

1. C语言常用函数汇总表(概念功能)

以下是每个函数的概念功能和使用,按类别分类并以表格表示。

1.1 输入/输出函数(

函数名

概念功能

使用示例

printf

用于格式化输出数据到标准输出设备(通常是屏幕)。支持多种格式说明符,用于输出字符串、整数、浮点数等。

printf("Hello, World! %d\n", 2024);

scanf

从标准输入设备(通常是键盘)读取格式化数据。支持多种格式说明符,用于输入整数、浮点数、字符等。

scanf("%d", &num);

puts

将字符串输出到标准输出设备,并在末尾自动添加换行符。

puts("Hello, World!");

getchar

从标准输入读取一个字符,常用于获取用户输入的单个字符。

char c = getchar();

putchar

将一个字符输出到标准输出设备。

putchar('A');

1.2 字符串操作函数(

函数名

概念功能

使用示例

strcpy

将源字符串复制到目标字符串。目标字符串必须有足够的空间。

strcpy(dest, src);

strncpy

将源字符串的前n个字符复制到目标字符串。目标字符串必须有足够的空间。

strncpy(dest, src, 5);

strcat

将源字符串连接到目标字符串的末尾。

strcat(dest, src);

strlen

返回字符串的长度,不包括空字符\0。

size_t len = strlen(str);

strcmp

比较两个字符串,返回负值、零或正值,分别表示前者小于、等于或大于后者。

if (strcmp(str1, str2) == 0) { ... }

strstr

查找字符串中第一次出现的子串,返回指向该子串的指针。

char *pos = strstr(str, "World");

1.3 内存管理函数(

函数名

概念功能

使用示例

malloc

动态分配指定字节数的内存块,返回指向该内存的指针。

int *arr = (int *)malloc(5 * sizeof(int));

calloc

动态分配内存并初始化为零,适用于数组。

int *arr = (int *)calloc(5, sizeof(int));

realloc

调整已分配内存块的大小,可能移动内存块。

arr = (int *)realloc(arr, 10 * sizeof(int));

free

释放之前使用malloc、calloc或realloc分配的内存。

free(arr);

1.4 数学函数(

函数名

概念功能

使用示例

pow

计算一个数的指定幂次,返回结果。

double result = pow(2.0, 3.0);

sqrt

计算平方根,返回结果。

double root = sqrt(16.0);

sin

计算弧度的正弦值,返回结果。

double s = sin(3.14159 / 2);

cos

计算弧度的余弦值,返回结果。

double c = cos(0.0);

tan

计算弧度的正切值,返回结果。

double t = tan(3.14159 / 4);

log

计算自然对数,返回结果。

double ln = log(2.71828);

1.5 时间函数(

函数名

概念功能

使用示例

time

返回自1970年1月1日以来的秒数(Unix时间戳)。如果参数不为NULL,则同时将值存储在参数指针指向的变量中。

time_t now = time(NULL);

difftime

返回两个时间点之间的时间差,以秒为单位。

double diff = difftime(time2, time1);

clock

返回程序执行时间,以时钟周期为单位。常用于测量程序运行时间。

clock_t start = clock();

strftime

根据指定的格式将时间转换为字符串,常用于格式化输出时间。

strftime(buf, 100, "%Y-%m-%d", timeinfo);

1.6 文件操作函数(

函数名

概念功能

使用示例

fopen

打开文件并返回文件指针,支持多种模式(如读、写、追加等)。

FILE *fp = fopen("file.txt", "r");

fclose

关闭文件,释放相关资源。

fclose(fp);

fread

从文件读取数据到内存中,常用于二进制文件读取。

fread(buffer, sizeof(char), 100, fp);

fwrite

将内存中的数据写入文件,常用于二进制文件写入。

fwrite(data, sizeof(char), 100, fp);

fscanf

从文件读取格式化数据,类似于scanf,但从文件读取而不是标准输入。

fscanf(fp, "%d", &num);

fprintf

向文件写入格式化数据,类似于printf,但输出到文件而不是标准输出。

fprintf(fp, "Value: %d\n", num);

1.7 布尔类型及相关函数(

函数名

概念功能

使用示例

bool

定义布尔类型,bool是_Bool的别名,用于表示真值和假值。

bool isEven = (num % 2 == 0);

true

表示真,布尔类型的常量,值为1。

if (isEven == true) { printf("Even number.\n"); }

false

表示假,布尔类型的常量,值为0。

if (isEven == false) { printf("Odd number.\n"); }

1.8 其他常用函数

函数名

概念功能

使用示例

#define

宏定义,用于定义常量或宏函数,在编译时进行替换。

#define PI 3.14159

typedef

为现有类型定义新的名称,常用于简化复杂类型声明。

typedef unsigned long ulong;

enum

定义枚举类型,用于表示一组相关的常量。

enum Color { RED, GREEN, BLUE };

struct

定义结构体,用于聚合不同类型的变量。

struct Point { int x; int y; };

sizeof

返回类型或变量的大小(以字节为单位)。

size_t size = sizeof(int);

typecast

类型转换,用于将一种数据类型转换为另一种。

double num = (double)intVar;

通过这些表格和示例,你可以掌握C语言中各类常用函数的功能和使用方法。如果你需要进一步深入了解某个函数或需要更多示例,随时告诉我!

2. C语言常用函数汇总表(标准格式)

以下是按类别分类的C语言常用函数汇总表,包含所属头文件、函数的标准格式及简单的示例代码。表格之后的示例代码综合展示了这些函数的使用,并包含了详细的注释。

2.1 输入/输出函数(

所属头文件

函数名

标准格式

示例代码

printf

int printf(const char *format, ...);

printf("Hello, World!\n");

scanf

int scanf(const char *format, ...);

scanf("%d", &num);

puts

int puts(const char *str);

puts("Hello, World!");

getchar

int getchar(void);

char c = getchar();

putchar

int putchar(int char);

putchar('A');

2.2 字符串操作函数(

所属头文件

函数名

标准格式

示例代码

strcpy

char *strcpy(char *dest, const char *src);

strcpy(dest, src);

strncpy

char *strncpy(char *dest, const char *src, size_t n);

strncpy(dest, src, 5);

strcat

char *strcat(char *dest, const char *src);

strcat(dest, src);

strlen

size_t strlen(const char *str);

size_t len = strlen(str);

strcmp

int strcmp(const char *str1, const char *str2);

if (strcmp(str1, str2) == 0) { ... }

strstr

char *strstr(const char *haystack, const char *needle);

char *pos = strstr(str, "World");

2.3 内存管理函数(

所属头文件

函数名

标准格式

示例代码

malloc

void *malloc(size_t size);

int *arr = (int *)malloc(5 * sizeof(int));

calloc

void *calloc(size_t nmemb, size_t size);

int *arr = (int *)calloc(5, sizeof(int));

realloc

void *realloc(void *ptr, size_t size);

arr = (int *)realloc(arr, 10 * sizeof(int));

free

void free(void *ptr);

free(arr);

2.4 数学函数(

所属头文件

函数名

标准格式

示例代码

pow

double pow(double base, double exponent);

double result = pow(2.0, 3.0);

sqrt

double sqrt(double x);

double root = sqrt(16.0);

sin

double sin(double x);

double s = sin(3.14159 / 2);

cos

double cos(double x);

double c = cos(0.0);

tan

double tan(double x);

double t = tan(3.14159 / 4);

log

double log(double x);

double ln = log(2.71828);

2.5 时间函数(

所属头文件

函数名

标准格式

示例代码

time

time_t time(time_t *tloc);

time_t now = time(NULL);

difftime

double difftime(time_t end, time_t start);

double diff = difftime(t2, t1);

clock

clock_t clock(void);

clock_t start = clock();

strftime

size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);

strftime(buf, 100, "%Y-%m-%d", timeinfo);

2.6 文件操作函数(

所属头文件

函数名

标准格式

示例代码

fopen

FILE *fopen(const char *filename, const char *mode);

FILE *fp = fopen("file.txt", "r");

fclose

int fclose(FILE *stream);

fclose(fp);

fread

size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);

fread(buffer, sizeof(char), 100, fp);

fwrite

size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);

fwrite(data, sizeof(char), 100, fp);

fscanf

int fscanf(FILE *stream, const char *format, ...);

fscanf(fp, "%d", &num);

fprintf

int fprintf(FILE *stream, const char *format, ...);

fprintf(fp, "Value: %d\n", num);

2.7 布尔类型及相关函数(

所属头文件

函数名

标准格式

示例代码

bool

typedef _Bool bool;

bool isEven = (num % 2 == 0);

true

#define true 1

if (isEven == true) { printf("Even number.\n"); }

false

#define false 0

if (isEven == false) { printf("Odd number.\n"); }

2.8 综合示例代码

以下示例代码综合使用了C语言的常用函数和布尔类型,并包含了详细的注释。代码最后还包括输出结果。

#include

#include

#include

#include

#include

#include

int main() {

// 输入/输出示例

int num;

printf("Enter a number: "); // 提示用户输入一个数字

scanf("%d", &num); // 读取用户输入的数字

printf("You entered: %d\n", num); // 输出用户输入的数字

// 使用布尔类型判断是否为偶数

bool isEven = (num % 2 == 0); // 判断数字是否为偶数

if (isEven) {

printf("%d is an even number.\n", num); // 如果是偶数,输出相关信息

} else {

printf("%d is an odd number.\n", num); // 如果是奇数,输出相关信息

}

// 字符串操作示例

char str1[20], str2[20] = "Hello, World!";

strcpy(str1, str2); // 将str2复制到str1

printf("str1: %s\n", str1); // 输出str1的内容

// 内存管理示例

int *arr = (int *)malloc(5 * sizeof(int)); // 动态分配内存

if (arr != NULL) {

for (int i = 0; i < 5; i++) {

arr[i] = i + 1; // 初始化数组元素,从1开始递增

}

printf("Array contents: ");

for (int i = 0; i < 5; i++) {

printf("%d ", arr[i]); // 输出数组内容

}

printf("\n");

free(arr); // 释放动态分配的内存

} else {

printf("Memory allocation failed!\n"); // 如果内存分配失败,输出错误信息

}

// 数学函数示例

double result = pow(2.0, 3.0); // 计算2的3次幂

printf("2^3 = %.2f\n", result); // 输出计算结果

// 时间函数示例

time_t now = time(NULL); // 获取当前时间

printf("Current time: %s", ctime(&now)); // 输出当前时间

return 0;

}

2.8.1 输出结果

假设用户输入的数字为7,则输出结果如下:

Enter a number: 7

You entered: 7

7 is an odd number.

str1: Hello, World!

Array contents: 1 2 3 4 5

2^3 = 8.00

Current time: Tue Aug 13 12:34:56 2024

2.8.2 代码说明

输入/输出示例:使用printf输出提示信息,使用scanf获取用户输入,并使用printf再次输出结果。

布尔类型判断:使用中的bool类型判断输入数字是奇数还是偶数,并使用true和false分别进行逻辑判断。

字符串操作:使用strcpy函数将一个字符串复制到另一个字符串,并输出结果。

内存管理:使用malloc动态分配内存,初始化分配的数组,并输出数组内容,最后释放内存。

数学函数:使用pow函数计算2的3次幂,并格式化输出结果。

时间函数:使用time函数获取当前时间,并使用ctime将时间转换为可读格式输出。

这段代码演示了如何在C语言中使用多种常用函数和布尔类型。通过这些示例,您可以更好地理解C语言的基本功能和标准库函数的用法。

3. 结束语

本节内容已经全部介绍完毕,希望通过这篇文章,大家对C语言中常用函数有了更深入的理解和认识。

感谢各位的阅读和支持,如果觉得这篇文章对你有帮助,请不要吝惜你的点赞和评论,这对我们非常重要。再次感谢大家的关注和支持!

相关推荐

移动小乐卡资费介绍,8元5G通用30分钟
365流水不够不能提现

移动小乐卡资费介绍,8元5G通用30分钟

2025-08-24 👁️ 4173
徐才厚被查抄内幕:豪宅中藏1吨多现金成堆玉石(图)
365流水不够不能提现

徐才厚被查抄内幕:豪宅中藏1吨多现金成堆玉石(图)

2025-07-22 👁️ 9445
词语悲欢是什么意思
beat365网页登录

词语悲欢是什么意思

2025-09-24 👁️ 1315
不我能慉,反以我为仇。
日博best365

不我能慉,反以我为仇。

2025-07-05 👁️ 6317
如何找到台式机上的正确位置插入优盘?
日博best365

如何找到台式机上的正确位置插入优盘?

2025-08-25 👁️ 4031
【KKTV电视】品牌介绍→KKTV智能电视
365流水不够不能提现

【KKTV电视】品牌介绍→KKTV智能电视

2025-08-05 👁️ 2838