首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
C语言篇
Lonble
创建于2021-05-18
订阅专栏
带你深入了解C语言
等 1 人订阅
共10篇文章
创建于2021-05-18
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
C语言篇:语法进阶
本文介绍一些C语言中高阶的语法知识,比如声明、定义、作用域、生存期、名字空间等,这些内容通常难以理解,但是实际开发中又经常用到。大部分教材或其他相关书籍都对这部分内容避而不谈或浅尝辄止,研究多日后,我
C语言篇:枚举类型
为什么需要枚举类型 实际编写程序的时候,我们经常使用一系列整数来表示一些属性。比如我要写一个打开文件的函数,有一个参数名为mode,它为0表示“只读”,1表示“只写”,2表示“读写”。这样的设计对机器
C语言篇:文件 - scanf解析
该解析过程适用于scanf、fscanf、sscanf,但sscanf略有不同,因为不包含缓冲区或文件位置指示器,每次读取都从头开始。 空白字符是一些常用来分隔记号的字符,包括空格' ',分页符'\f',换行符'\n',回车符'\r',水平制表符'\t',垂直制表符'\v'。 …
C语言篇:文件 - I/O操作
对于关联到终端的输入流,如果读完了缓冲区中最后一个字节,并尝试继续读取,则请求终端输入,此时程序控制权转交终端。 fprintf函数把字符写入流中,数据由格式字符串及后面的参数提供。 函数返回实际写入的字符数,如果发生错误则返回一个负数。 如果所给参数多于格式控制需要的参数,则…
C语言篇:文件 - 文件与流操作
remove函数类似于Unix/Linux命令rm,接受一个文件名,然后删除其对应的文件。对于大多数文件系统,删除文件仅仅是删除文件索引,并不擦除硬盘内容,所以能在一瞬间完成。 函数执行成功返回0,失败返回非0。 rename函数类似于Unix/Linux命令mv,不仅能重命名…
C语言篇:文件 - 基础知识
stdio.h是C语言的标准输入输出库的头文件,申明了很多类型、宏,以及相关函数。如果想使用标准输入输出(如printf函数),就必须包含该头文件。对于gcc编译器,标准输入输出库默认链接到每个程序,不需要手动链接。 在C语言的标准输入输出库中,I/O被抽象成“流”,以忽略不同…
C语言篇:语法细节杂谈(番外篇)
申明位置 在C89(C90)以及之前,块内的申明(比如函数内)必须放在块开头(即所有申明在语句之前)。而从C99开始,申明可以放在任何位置。比如以下代码,在C99中可以通过编译,而在C89(C90)中
C语言篇:数组
在很多情况下,数组可以当作第一个元素的指针来使用,但数组不是指针。在 C语言篇:指针 这篇文章的“指针与数组”一节有详细介绍。 众所周知,不管是几维的数组,都是按照一维数组存储的。 多维数组其实是元素为数组的数组。 我一直非常反对将二维数组表示为行和列的矩阵,不仅不符合底层原理…
C语言篇:语言结构
在谈C的语言结构之前,需要先解释一些基本元素的含义。 注意:单个变量、常量或函数名也是一个表达式。 其中var、fn、1、5都是表达式,其返回值为自身的值;fn(1)也是一个表达式,返回函数调用的返回值;fn(1) + 5也是一个表达式,返回算术运算的结果;var = fn(1…
C语言篇:指针
在程序运行的过程中,所有的数据都是放在主存(内存)里的,主存按字节编址,每个字节对应一个编号,称为地址,计算机通过地址可以精确地存取数据。 在C语言中有一类数据类型,它保存主存地址,并可以通过运算符对该地址的数据进行操作。如果它保存的是某个变量的地址,可以形象地说它指向了某个变…