C 标准库学习笔记

1. 概述

C 标准库是 C 语言的重要组成部分,提供了众多常用函数和数据类型,方便程序员进行开发。C 标准库的功能被分为多个不同的头文件,每个头文件包含一组相关的函数和定义。

2. 常用函数

下面介绍一些常用的 C 标准库函数及其用法。

2.1 printf 函数

printf 函数用于向标准输出流(通常是显示器)输出格式化数据。它的基本语法如下:

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

其中,第一个参数 format 是格式化字符串,后面的省略号表示可变参数列表,即需要输出的数据。下面是一个示例:

cCopy Code
#include <stdio.h> int main() { int age = 18; printf("I am %d years old.\n", age); return 0; }

输出结果为:

Copy Code
I am 18 years old.

2.2 scanf 函数

scanf 函数用于从标准输入流(通常是键盘)读取格式化数据。它的基本语法如下:

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

其中,第一个参数 format 是格式化字符串,后面的省略号表示指向需要读取的数据的指针。下面是一个示例:

cCopy Code
#include <stdio.h> int main() { int age; printf("Please enter your age: "); scanf("%d", &age); printf("Your age is %d.\n", age); return 0; }

运行结果如下:

Copy Code
Please enter your age: 25 Your age is 25.

2.3 malloc 函数

malloc 函数用于在堆上动态分配一段指定大小的内存空间,返回一个指向该空间起始地址的指针。它的基本语法如下:

cCopy Code
void* malloc(size_t size);

其中,size 表示需要分配的内存字节数。下面是一个示例:

cCopy Code
#include <stdlib.h> #include <stdio.h> int main() { int *p = (int*)malloc(sizeof(int)); if (p == NULL) { printf("Failed to allocate memory.\n"); return 1; } *p = 123; printf("p = %d\n", *p); free(p); return 0; }

运行结果如下:

Copy Code
p = 123

2.4 free 函数

free 函数用于释放之前动态分配的内存空间。它的基本语法如下:

cCopy Code
void free(void *ptr);

其中,ptr 是需要释放的空间地址。下面是一个示例:

cCopy Code
#include <stdlib.h> int main() { int *p = (int*)malloc(sizeof(int)); free(p); return 0; }

3. 总结

本文介绍了 C 标准库的一些常用函数,包括 printf、scanf、malloc 和 free 函数。这些函数可以方便程序员进行各种开发任务,如输出数据、读取数据和动态内存分配等。