- 博客(12)
- 收藏
- 关注
原创 Day14-Linux中标准库函数的I/O操作
w+:读写 (ps:如果文件存在则截断成0(清空文件所有内容,但保留文件本身),不存在则创建)a:追加的读写(ps:如果文件存在则在末尾写,不存在则创建)输出效果为:想要输出的字符串:错误原因。3.fopen的作用:相对于将硬件上的文件转换为了内存的流指针(描述的是文件操作的这个动态的对象)返回值:成功:读取到字符的ASCLL码值 失败:EOF(ps:文件结尾也是EOF):@pathname 表示要打开的文件 //文件名(对应的字符串):流打开函数,打开 pathname指定的文件,并关联一个流。
2025-08-13 21:14:11
668
原创 Day14-结构体和共用体
结构体的本质和主要应用场景是提供给用户(程序员)自定义一种数据类型,程序员根据问题的需要自己来组织一种数据类型,可以描述生活中一些用基本数据类型不好描述的场景,将不同类型的数据集合在一起,就比如我们定义一个“学生”的数据类型:学生name //字符串sno //学号score //浮点型...} --- 当作某一数据类型//反应是学生这种数据类型所以在C语言中,结构体定义的语法是:(ps:结构体定义结尾要加分号)struct 结构体名。
2025-08-10 11:40:50
678
原创 Day13-指针(2)
在这个定义中s本身的空间在栈上,s是char*类型的指针变量,用来存放一个char*类型的地址,而hello字符串都是按字符数组的方式存储的,相当于是指针指向了一个字符串常量,存储的是hello的地址,所以后续写s[0]='h'是错误的,因为常量区的空间不能修改,而目前s存储的就是常量区的空间地址。所以这时候*(p+1)就等同于a[1],表示可以使用一整行的空间,也相当于这个行数组内部一整行的数组名,然后a[3][4]中的[4]决定这一行的数组大小,因此a[1][0]所代表的是就是这一行首元素的地址。
2025-08-07 21:29:12
1493
原创 Day12-指针(1)
基类型 * 指针变量名;(1).基类型:基类型说明了通过指针找到的内存空间有多大,并且如何使用,比如int是4个字节,那么这个指针变量访问的变量地址就一共有四个字节,short就是两个字节,char就是一个字节,简单来说就是指针找到的空间上所存储的数据类型(2)."*":只是一个修饰符,用来说明现在定义的变量不是普通变量而是指针变量(3).指针变量名:是一个标识符,需符合标识符命名的规则eg:int a = 10;//定义一个int型变量 初始化为10//定义了一个指针类型的变量p。
2025-08-05 20:45:47
682
原创 Day11-预处理
首先介绍以下几个关键字 作用是建议编译器将变量存储在寄存器中,以加快访问速度,需要注意的是它定义的变量不能取地址,因为寄存器变量无内存地址,如以下代码建议编译器将i放入寄存器它的作用是声明变量在其它文件中定义,或者是用于多文件共享全局变量或函数它的主要作用是限制作用域或生命周期,具体用法分为两种情况:一种是定义静态局部变量,他的生命周期为整个程序的运行期间,作用域仅限于函数以内另一种是定义全局变量,使变量只能作用在文件内部C语言从程序编写到执行输出的过程中有着以下几个阶段: 而预处理与C语
2025-08-04 20:38:42
471
原创 函数的传参
形参需要包括数组名及传递数组的长度,后者是必须的,因为编译器在函数中是无法判断出实参传递数组的数组长度,所以必须在主函数中进行定义和赋值,如以下代码,定义并调用了打印一个数组的函数,所以可以看到,数组的元素被一个个的打印出来,但其打印的次数也就是数组的长度需要在主函数中通过sizeof函数去进行获取。需要注意的是,行数是在主函数中必须自行定义并赋值的一个实参,然后传入到函数中来,原因和一维整型数组做函数参数相同,如下代码所示,须在主要数中定义行数row,并通过sizeof函数对其进行赋值。
2025-08-03 17:47:10
378
原创 Day10 - 函数基础
C语言中用函数解决问题的基本思路是:不断对一个问题或者需求进行拆分,直到拆分到一个能独立解决一个问题为止 函数定义的语法是: 在函数头部分主要是这几部分: (1)类型表示符:有int/short/long等多种类型,其说明了返回值的类型 值得注意的是1.返回值结果和设计的类型标识符可能不一致此时,返回值结果会被转换成类型标识符指定的类型 2.如果返回值类型省略不写则默认 int类型
2025-07-31 21:10:08
289
原创 嵌入式学习(从0到企业级水平学习流程)Day8--数组
今天开始我们就要进入C语言学习中的第一个难点---数组,我们首先会从数组最基础的定义开始介绍再逐步延申,方便大家更容易理解数组的深层原理和作用; 首先大家可以思考一下什么是数组? 当你的高中班主任要求你用C语言统计一下班上同学的平均分时你会怎么做? 用我们最初学的定义整形变量然后一一赋值吗,那样的工作量不可谓不大,所有为了方便我们对数据的批量化处理,在C语言当中我们引入了一个概念--数组即一组相同类型变量的集合 数组的本质是一组数据,通过变量来保存数据,那么我们该如何定义一个数组呢?这就是定义数
2025-07-29 21:15:58
2058
1
原创 嵌入式学习Day5(流程控制)
Tip:刚开始学习嵌入式的宝子要在这个阶段学会画流程图,这对我们锻炼代码思维有很大的帮助;一.选择结构(if语句/switch语句)1.选择时应有的判断条件关系运算(>/>=/</<=/==/!=)关系成立 --- 关系真;关系不成立 --- 关系假逻辑运算:将多个表达式关联起来,反映表达式与表达式之间的逻辑关系与(&&) 运算规则:一假则假: a&&b特性:截断特性,运算顺序一定是先执行左边的,若左边已判断为假,则不继续执行右边的表达式。
2025-07-26 20:12:43
375
原创 嵌入式学习Day4(C语言的输入和输出)
(1)m是个数字,表示要输出的数据的宽度(%3d表示指定输出结果的宽度为3列字符的宽度)%X --将数据转换为十六进制形式,其中出现的字母转换为大写形式。函数参数:c --- 要输出的字符//ASCLL码值;函数参数:void --为空(不需要传递实际参数);返回值:成功则返回读到的字符对应的ASCLL码值;返回值:成功则返回读到的字符对应的ASCLL码值;须是一个"格式控制字符串",后面是可变数量的指针参数,用于存储读取的数据;浮点型:%f --将数据转换为十进制形式小数,默认保留六位小数。
2025-07-25 20:43:36
628
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅