- 博客(15)
- 收藏
- 关注
原创 掌握C语言文件操作:从理论到实战指南
在C语言中,流(stream)是一个抽象概念,表示程序与外部设备(如键盘、显示器、文件、网络等)之间数据传输的通道。可以将流想象成一条“数据河流”,数据在这条河中单向流动,因此有输入流也有输出流:输入流:数据从外部设备(如键盘、文件)流向程序。输出流:数据从程序流向外部设备(如显示器、文件)。文件操作是C语言中实现数据持久化的核心技能。通过本文的学习,我们了解到文件的打开、读写、随机访问及错误处理等关键操作。掌握文件操作,让你的程序真正“记住”数据!
2025-04-11 20:32:09
927
原创 动态内存管理
允许结构体最后一个成员为未知大小的数组,就称为柔性数组。int i;int a[0];//柔性数组成员int i;int a[];//柔性数组成员特点:1. 结构体中的柔性数组成员前面必须至少有一个其他成员。2.sizeof不计算柔性数组成员的大小。3. 需要通过malloc动态分配内存,且分配的内存大小应该大于结构体的大小,以适应柔性数组的预期大小。int i;int a[0];}type_a;
2025-03-13 15:51:13
680
原创 C语言自定义类型:联合和枚举
本期我们介绍了联合体和枚举两大知识点,合理使用联合和枚举,可以显著提升C语言程序的效率和可维护性。夯实基础,无限进步,如有疑惑,欢迎讨论!
2025-02-28 22:38:25
1338
原创 自定义类型:结构体
本期内容到这里就结束了。在本期,我们主要学习了结构体的相关知识,包括声明、自引用、传址调用等等,强调了结构体的内存对齐;简单介绍了由结构体实现的位段,包括声明,内存储存情况以及引用,要注意位段具有跨平台问题。夯实基础,无限进步。如有疑惑,欢迎讨论!
2025-02-20 07:30:00
975
原创 数据在内存中的存储
以上就是本期全部内容,相信大家已经对大小端模式、 整型提升、“循环圈”、浮点数的储存等知识有了进一步理解。夯实基础,无限进步,如有疑惑,欢迎讨论!
2025-01-27 16:00:19
939
原创 C语言基础知识:指针(6)——试题解析
以上就是本期的全部内容,通过不少的指针练习,我们对指针的理解就更深了一步。有关指针的专项介绍也就暂时告一段落,下一期就将往后学习C语言其他知识。夯实基础,无限进步。如有疑惑,欢迎讨论!
2024-12-17 20:07:52
1933
原创 C语言基础知识:指针(4)
我们在上起讲过,&arr其实是数组指针类型,,那么这里的parr就是数组指针变量。它实质上是指针变量,存放的是数组的地址,能够指向数组的指针变量。思考一下:p1、p2分别是什么?这个表达形式我们的上期内容有提到(int* arr[3] = { &a,&b,&c }),所以这里的p1是指针数组变量,本质是数组,用来存放指针变量的。那么这里的p2就是数组指针变量。,我们来分析一下:p2先和*结合,说明p是一个指针变量;然后指针指向的是是一个大小为10个整型的数组。示意图。
2024-12-04 12:50:28
1034
原创 C语言基础知识:指针(1)&&(2)
m = 20;n = 20;return 0;运行的时候编译器就会报错:这里就说明,m是能被修改的,但是n不能被修改。其实n本质也是变量(注:C++中 const int n = 10;中的n是常量),只不过被const修饰后,在语法上加了限制,一旦对n进行修改就会报错。return 0;运行结果:这样子就成功“无视”const修饰,修改了n的值。
2024-11-18 22:38:16
1060
2
原创 C语言基础知识:函数的递归
递归就是一种解决问题的方法,在C语言中,递归就是函数自己调用自己。//main函数里面又调用main函数return 0;这就是一个最简单的递归代码,递归的基本形式就是只这样。但是上述代码运行时,会陷入死递归,导致栈溢出本次讨论中,我们先简单了解了递归的基本形式及其限制条件,然后更多的是实操演练,通过对例子的逐步分析,深入理解递归的使用。之后我们又拓展学习了青蛙跳台阶问题和汉诺塔问题,并用此次所学进行习题练习。
2024-11-07 23:44:13
2284
原创 C语言简单程序:猜数字游戏
猜数字,即主持人预先随便想一个数字(1-100),玩家随便猜一个数字,玩家猜的数字大于预先的随机数,主持人则告知玩家“猜大了”;小了就告知“猜小了”;只有玩家正好猜中预先的随机数时,才算玩家胜利。依据这个游戏规则,我们可以简单想想怎么用程序设计语言表达。首先,我们需要生成一个。
2024-10-23 12:16:08
1966
原创 C语言中的分支与循环
这个语句就很特殊,while和if语句都是先判断再进入循环,而do-while语句会直接进入循环体,执行循环语句,然后再执行while后的判断表达式,表达式为真,就会进入下一次,表达式为假,则不再继续循环,所以do-while语句中循环体至少执行一次,当然这也是do-while语句使用次数较少的原因。当i等于5后,执行continue,直接跳过continue的代码,来到循环判断的地方,但是因为这里跳过了“i += 1”,所以i一直等于5,程序陷入死循环,这一点需要注意。,表达式的值为0,则循环结束;
2024-10-20 16:06:43
751
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人