文章目录
-
- 本博客尽提供本书学习所涉及的函数和名词解释 仅作为 学习参考
- 关于Windows编程环境配置详见:[wsl的安装](https://blog.csdn.net/weixin_65802796/article/details/125126809?utm_source=app&app_version=5.5.0)
- 数据类型
- 错误处理
- 关键字
- 函数
-
- IO函数
-
- `fscanf`
- `fgets`
- `fopen`
- `freopen` 文件流重定向,流替换
- `fdopen` 将文件描述词转为文件指针
- `fclose` 关闭流 stream。刷新所有的缓冲区
- `fcloseall` 关闭除标准流(stdin、stdout、stderr、stdprn、stdaux)之外的所有打开的流,刷新所有的流缓冲区,并返回关闭的流数。
- `fgetpos` 获取流 **stream** 的当前文件位置,并把它写入到 **pos**。
- `fseek` 设置流 **stream** 的文件位置为给定的偏移 **offset**,参数 offset 意味着从给定的 **whence** 位置查找的字节数。
- `ftell` 返回给定流 stream 的当前文件位置
- `rewind` 设置文件位置为给定流 **stream** 的文件的开头
- `fprintf` 发送格式化输出到流 stream 中。
- `fwrite` 把 **ptr** 所指向的数组中的数据写入到给定流 **stream** 中。
- `fread` 从给定流 **stream** 读取数据到 **ptr** 所指向的数组中
- 内存
- 指针
- 预处理器
- 栈,作用域和全局
在线书籍
首先笨方法学c语言 是一本十分优秀的c语言乃至学习其他语言编程的入门书
本书与传统出版书籍不同不是先说明名词概念而是先给出实例 在进行解释 如此可以以自己为中心自由掌握学习速度
本博客尽提供本书学习所涉及的函数和名词解释 仅作为 学习参考
关于Windows编程环境配置详见:wsl的安装
本博客采用Markdown编写可自由复制至md编辑器以便离线保存和生成目录及提高阅读体验 本文将持续更新不断完善
Make
Makefile
CFLAGS:用于c的编译器选项
CXXFLAGS:C++的编译器选项
LDFLAGS:gcc 等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。
LIBS:告诉链接器要链接哪些库文件,如LIBS = -lpthread -liconv
gcc -o hello hello.c -I /home/hello/include -L /home/hello/lib -lworld
-lworld
表示在上面的lib的路径中寻找libworld.so动态库文件(如果gcc编译选项中加入了“-static”表示寻找libworld.a静态库文件)
-I /home/hello/include`表示将/home/hello/include目录作为第一个寻找头文件的目录,寻找的顺序是:`/home/hello/include-->/usr/include-->/usr/local/include
-L /home/hello/lib`表示将/home/hello/lib目录作为第一个寻找库文件的目录,寻找的顺序是:`/home/hello/lib-->/lib-->/usr/lib-->/usr/local/lib
数据类型
windows操作系统,64位机中
char: 1个字节
short: 2个字节
int: 4个字节
long: 4个字节
整数
%d 整数的参数会被//转成有符号的十进制数字
%u 整数的参数会被//转成无符号的十进制数字
%o 整数的参数会被//转成无符号的八进制数字
%x 整数的参数会被//转成无符号的十六进制数字,并以小写abcdef 表示
%X 整数的参数会被//转成无符号的十六进制数字,并以大写ABCDEF 表示浮点型数
%f d