前言
已经用了十多年的C语言,回头看怎么学习、提升最快呢?个人觉得还是要从框架上去着手学习,用全局眼光去看、去学,主要是三部分:关键字及基本语法、重点功能点及标准库函数;只要把这三部分基本搞懂了,剩下就就是去刻意练习与项目实践,更熟练也就更精通,也就能写出架构更合理、更精妙的程序~
一.关键字及基本语法学习
1.数据类型关键字:
int:整型
char:字符型
float:单精度浮点型
double:双精度浮点型
short:短整型
long:长整型
signed:有符号
unsigned:无符号
_Bool:布尔型(C99标准)
2.控制流关键字:
if:条件语句
else:条件语句(与if配对使用)
switch:选择语句
case:选择语句的分支标记
default:选择语句的默认分支
while:循环语句
do:循环语句(与while配对使用)
for:循环语句
goto:无条件跳转
break:跳出循环或switch语句
continue:结束当前循环,进入下一次循环
3.存储类关键字:
static:静态存储期
extern:外部变量和函数声明
4.函数和作用域关键字:
void:表示无类型或函数无返回值
return:函数返回语句
sizeof:计算对象或类型大小
5.其他关键字:
const:定义常量
volatile:告诉编译器不要优化这个变量
struct:定义结构体类型
union:定义联合体(共用体)类型
enum:定义枚举类型
typedef:为数据类型定义别名
二.重点功能点学习
指针的运用;
函数的编写及运用;
结构体的使用;
三.库函数学习
1.C语言标准库主要包括以下几个部分的函数:
2.主要库函数如下
数学函数:
sin:正弦函数
cos:余弦函数
tan:正切函数
pow:幂函数
sqrt:平方根函数
fabs:浮点数的绝对值函数
abs:整数的绝对值函数
字符串处理函数:
strlen:计算字符串长度
strcpy:字符串复制
strcat:字符串连接
strcmp:字符串比较
strstr:查找子串
strtok:分割字符串
字符处理函数:
isalpha:判断字符是否为字母
isdigit:判断字符是否为数字
isalnum:判断字符是否为字母或数字
tolower:将大写字母转换为小写
toupper:将小写字母转换为大写
文件操作函数:
fopen:打开文件
fclose:关闭文件
fread:从文件中读取数据
fwrite:向文件中写入数据
fgets:从文件中读取一行
fputs:向文件中写入一行
I/O函数:
scanf:从标准输入读取格式化的数据
printf:向标准输出打印格式化的数据
gets:从标准输入读取一行(不推荐使用,因为不检查缓冲区溢出)
puts:向标准输出打印一行和一个换行符
存储管理函数:
malloc:动态内存分配
calloc:动态内存分配并初始化
realloc:调整已分配内存的大小
free:释放已分配的内存
时间和日期函数:
time:获取当前时间(以秒为单位)
localtime:将时间转换为本地时间格式
strftime:将时间格式化为字符串
其他:
rand 和 srand:用于生成随机数
exit:退出程序
assert:断言,用于调试
3.推荐一个c语学习网站
可以学习基本的c语法,同时可以方便的查看c库函数及应用方法:
http://www.w3cmap.com/cprogramming/c-tutorial.html
2.主要库函数如下
数学函数:
sin:正弦函数
cos:余弦函数
tan:正切函数
pow:幂函数
sqrt:平方根函数
fabs:浮点数的绝对值函数
abs:整数的绝对值函数
字符串处理函数:
strlen:计算字符串长度
strcpy:字符串复制
strcat:字符串连接
strcmp:字符串比较
strstr:查找子串
strtok:分割字符串
字符处理函数:
isalpha:判断字符是否为字母
isdigit:判断字符是否为数字
isalnum:判断字符是否为字母或数字
tolower:将大写字母转换为小写
toupper:将小写字母转换为大写
文件操作函数:
fopen:打开文件
fclose:关闭文件
fread:从文件中读取数据
fwrite:向文件中写入数据
fgets:从文件中读取一行
fputs:向文件中写入一行
I/O函数:
scanf:从标准输入读取格式化的数据
printf:向标准输出打印格式化的数据
gets:从标准输入读取一行(不推荐使用,因为不检查缓冲区溢出)
puts:向标准输出打印一行和一个换行符
存储管理函数:
malloc:动态内存分配
calloc:动态内存分配并初始化
realloc:调整已分配内存的大小
free:释放已分配的内存
时间和日期函数:
time:获取当前时间(以秒为单位)
localtime:将时间转换为本地时间格式
strftime:将时间格式化为字符串
其他:
rand 和 srand:用于生成随机数
exit:退出程序
assert:断言,用于调试
3.推荐一个c语学习网站
可以学习基本的c语法,同时可以方便的查看c库函数及应用方法:
http://www.w3cmap.com/cprogramming/c-tutorial.html
2.主要库函数如下
数学函数:
sin:正弦函数
cos:余弦函数
tan:正切函数
pow:幂函数
sqrt:平方根函数
fabs:浮点数的绝对值函数
abs:整数的绝对值函数
字符串处理函数:
strlen:计算字符串长度
strcpy:字符串复制
strcat:字符串连接
strcmp:字符串比较
strstr:查找子串
strtok:分割字符串
字符处理函数:
isalpha:判断字符是否为字母
isdigit:判断字符是否为数字
isalnum:判断字符是否为字母或数字
tolower:将大写字母转换为小写
toupper:将小写字母转换为大写
文件操作函数:
fopen:打开文件
fclose:关闭文件
fread:从文件中读取数据
fwrite:向文件中写入数据
fgets:从文件中读取一行
fputs:向文件中写入一行
I/O函数:
scanf:从标准输入读取格式化的数据
printf:向标准输出打印格式化的数据
gets:从标准输入读取一行(不推荐使用,因为不检查缓冲区溢出)
puts:向标准输出打印一行和一个换行符
存储管理函数:
malloc:动态内存分配
calloc:动态内存分配并初始化
realloc:调整已分配内存的大小
free:释放已分配的内存
时间和日期函数:
time:获取当前时间(以秒为单位)
localtime:将时间转换为本地时间格式
strftime:将时间格式化为字符串
其他:
rand 和 srand:用于生成随机数
exit:退出程序
assert:断言,用于调试
3.推荐一个c语学习网站
可以学习基本的c语法,同时可以方便的查看c库函数及应用方法:
http://www.w3cmap.com/cprogramming/c-tutorial.html