- 博客(26)
- 问答 (1)
- 收藏
- 关注
原创 C++类和对象(一)
在C++中类的定义与结构体相似,定义类的关键字是class。类中的变量称为类的属性或成员变量;类中的函数称为类的方法或者成员函数。类的两种定义方式:成员函数如果在类中定义,编译器可能会将其当成内联函数处理。如:2.类声明放在.h文件中,成员函数定义放在.cpp文件中,如:我们一般更喜欢第二种类定义方法,但是在学习的过程中为了方便我们也可以使用第一种方法。成员变量命名规则的建议:类的成员变量命名时我们一般喜欢在名字前面或者后面加_或其它标志,如:这样做的目的是:避免一些地方出现歧义。
2024-07-10 17:17:56
570
原创 C++入门(三)
在早期C/C++中auto的含义是:使用auto修饰的变量,是具有自动存储器的局部变量,但遗憾的是一直没有人去使用它,后来就废弃了。auto不再是一个存储类型指示符,而是作为一个新的类型指示符来指示编译器,auto声明的变量必须由编译器在编译时期推导而得。简单来说就是auto可以自己推导类型。注意:使用auto定义变量时必须对其进行初始化,在编译阶段编译器需要根据初始化表达式来推导auto的实际类型。
2024-05-21 21:40:25
692
原创 C++入门(一)
在学习之前我们先来简单了解一下C++的起源。我们知道C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解决软件危机, 20世纪80年代, 计算机界提出了OOP(objectoriented programming:面向对象)思想,支持面向对象的程序设计语言应运而生。1982年,Bjarne Stroustrup(本贾尼·斯特劳斯特卢普)博士在C语言的基础上引入并扩充了面向对象的概念,发明了一种新的程序语言。
2024-05-12 20:47:24
873
原创 C语言——文件操作
磁盘上的文件就是文件。程序文件和数据文件。(1)程序文件:程序⽂件包括源程序⽂件(后缀为.c),⽬标⽂件(windows环境后缀为.obj),可执⾏程序(windows环境后缀为.exe)。如:(2)数据文件:⽂件的内容不⼀定是程序,⽽是程序运⾏时读写的数据,⽐如程序运⾏需要从中读取数据的⽂件,或者输出内容的⽂件。如:(3)文件名⼀个⽂件要有⼀个唯⼀的⽂件标识,以便⽤户识别和引⽤。⽂件名包含3部分:⽂件路径+⽂件名主⼲+⽂件后缀例如: c:\code\test.txt。
2024-05-10 12:55:21
1113
原创 C语言——数据在内存中的存储
说的通俗一点,大小端其实就是数据在内存中的存储顺序。其实超过⼀个字节的数据在内存中存储的时候,就有存储顺序的问题,按照不同的存储顺序,我们分为⼤端字节序存储和⼩端字节序存储。⼤端(存储)模式:是指数据的低位字节内容保存在内存的⾼地址处,⽽数据的⾼位字节内容,保存在内存的低地址处。⼩端(存储)模式:是指数据的低位字节内容保存在内存的低地址处,⽽数据的⾼位字节内容,保存在内存的⾼地址处。什么意思呢?
2024-04-27 15:28:48
907
原创 C语言——结构体
结构体变量的创建其实和普通变量的定义是一样的。如:与普通变量不同的是要在前面加一个struct。通俗来讲,位段就是改变了成员变量大小的结构体。位段的声明和结构是类似的,有两个不同:1. 位段的成员必须是 int、unsigned int 或signed int ,在C99中位段成员的类型也可以选择其他类型。2. 位段的成员名后边有⼀个冒号和⼀个数字如:上面A就是一个位段类型,里面的成员大小被改变了。在这里是直接改成比特位而不是字节。下面我们来看看这个位段的大小。我们可以看到是4个字节。
2024-04-18 21:24:18
1280
原创 C语言——内存函数
如:下面我们来模拟实现一下:我们可以看到memcpy函数的返回类型和前两个参数都是void*类型,这就是为了使这个函数什么类型的数据都能拷贝,并且是通过指针来拷贝。由于事先我们不知道要拷贝什么类型的数据,所以我们将两个参数强制转换成char*类型一个字节一个字节的拷贝(char*大小就是一个字节)这样就可以实现任何类型数据都可以拷贝了。我们再深入思考一下,既然函数参数是指针,那么它能不能拷贝前面的数据放在后面呢?我们可以来测试一下:我们可以看到结果是:1 2 1 2 1 2 1 8 9 10。
2024-04-11 23:19:46
298
1
原创 C语言——字符函数和字符串函数
Hello,大家好,今天和大家分享C语言中的几个字符函数和字符串函数,记得三连支持一下哦!在编程的过程中,我们经常要处理字符和字符串,为了⽅便操作字符和字符串,C语⾔标准库中提供了⼀系列库函数,接下来我们就学习⼀下这些函数。在C语言中有一些函数是专门来分类字符的,也就是⼀个字符是属于什么类型的字符的。如:这些函数都需要包含头文件且它们的用法都是差不多的下面就拿isupper举例,isupper是检查字符是否为大写字符的函数,通过返回值来说明是否是大写字⺟,如果是大写字⺟就返回⾮0的整数,如
2024-04-09 18:37:38
646
原创 C语言——函数递归
说到递归,或许有的小伙伴听过,但对于我们来说是一个比较陌生的词。那什么是递归呢?递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。接下来,我们先看一段简单的代码:在上述代码中我们看到,main函数调用用了自己。这就是⼀个简单的递归程序,只不过上⾯的递归只是为了演⽰递归的基本形式,不是为了解决问题,代码最终也会陷⼊死递归,导致栈溢出(Stack overflow)。递归的思想:把⼀个⼤型复杂问题层层转化为⼀个与原问题相似,但规模较⼩的⼦问题来求解;
2024-03-27 06:00:00
1008
原创 C语言——函数
我们可以把函数想象成⼩型的⼀个加⼯⼚,⼯⼚得输⼊原材料,经过⼯⼚加⼯才能⽣产出产品,那函数也是⼀样的,函数⼀般会输⼊⼀些值(可以是0个,也可以是多个),经过函数内的计算,得出结果。ret_type 是⽤来表⽰函数计算结果的类型,有时候返回类型可以是 void ,表⽰什么都不返回fun_name 是为了⽅便使⽤函数;就像⼈的名字⼀样,有了名字⽅便称呼,函数有了名字⽅便调⽤,所以函数名尽量要根据函数的功能起的有意义。
2024-03-22 22:47:22
649
原创 C语言 指针(三)
我们先来思考一个问题,指针数组是指针还是数组?我们不妨来类比一下,整型数组,是存放整型的数组,字符数组是存放字符的数组。那指针数组呢?是存放指针的数组。注意:指针数组是数组不是指针!我们知道整型数组存放的是整型数据,字符数组存放的是字符数据,那么指针数组存放的就是指针(数组中的每个元素是指针类型),也就是说指针数组的每个元素都是⽤来存放地址(指针)的。那么指针数组是怎么表示的呢?我们只需要把数组名前面的类型定义为指针类型就可以啦!如:int* arr1[5] float* arr2[10]
2023-12-11 06:00:00
907
1
原创 C语言 指针(一)
我们知道在C语言中指针是很重要的知识,可以说指针就是C语言的灵魂,既然如此学好指针是非常重要的,下面就和大家分享指针有关知识。
2023-12-05 06:00:00
859
原创 C语言小游戏——扫雷游戏
Hello,大家好,今天和大家分享一个小游戏扫雷游戏,相信这也是许多小伙伴们的童年回忆。与之前不同的是今天我们用代码来写这个小游戏然后再来玩。下面我们就开始吧。在正式游戏之前,我们肯定要有一个游戏菜单界面,这样才方便玩家去选择,可以去编写一个函数,然后去调用它。我们可以先创建一个game.h头文件把一些定义的函数和其他的东西放进去,方便我们以后调用,游戏菜单我们可以放在一个test.c文件中,下面的游戏本体可以放在game.c文件中这样更方便我们去编写代码这样我们就可以在后面的主函数中去调用它了。
2023-11-03 14:00:19
87
1
原创 初学C语言的感受
首先就是C语言学起来并没有那么难,里面的一些语法还是很好理解的(就我目前学的来看,可能是我还没有学到难理解的地方吧😂)。其次就是我认为C语言最难的就是自己上手打代码,可能上课时学的一些语法也都听懂了,知道它是怎么去执行的,但是等到自己上手去敲代码的时候还是无从下手,特别是在做题目的时候这种感触最深,就很苦恼。当然我也问了老师,他说不会自己敲就先看别人敲的,然后去分析他是怎么敲的,然后自己再去敲一遍,一边不行就敲两遍三遍,熟能生巧,实在理解不了就把代码背下来。过程虽然痛苦,但是结果却是喜悦的。
2023-10-22 12:00:00
46
原创 一个崭新的开始
其他的语言后面有多余时间在学习吧。当然,我觉得学习C语言最重要的还是在听完老师讲解完之后自己去操作,在自己敲代码的同时去思考这段代码这样写的原因,不能只带一个手去敲代码,否则收获少之又少,能做到这样我觉得会有事半功倍的效果。但值得高兴的是这个学习型的社团会督促我们学习,这就保证了我一周学习C语言的时间不会太少,即使很多时候和鹏哥的课有冲突,而且也会有学长指导我们,这就比较nice!今年暑假也是好好的放松了一下,啥都没有学习,结果一进到大学就傻了眼,大学也没有我想象的那么轻松,也需要好好的努力提升自己。
2023-10-11 11:39:18
47
空空如也
初学c语言,请提示一下那里错了😭
2023-09-10
这个最后为什么输出的不是“不是三角形”(语言-c语言)
2023-09-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人