自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 函数对象的介绍

cout << "myPrint调用次数为: " << myPrint.count << endl;cout << "找到了大于5 的数字为: " << *it << endl;特点:函数对象在使用时,可以像普通函数那样调用,可以有参数,可以有返回值。//函数对象在使用时,可以像普通函数那样调用,可以有参数,可以有返回值。//函数对象超出普通函数的概念,函数对象可以有自己的状态。函数对象超出普通函数的概念,函数对象可以有自己的状态。本质:函数对象(仿函数)是一个类,不是一个函数。函数对象可以作为参数传递。

2023-12-21 11:58:54 348

原创 map/multimao容器

cout << "姓名:" << pos->second.name << "工资: " << pos->second.salary << endl;//分组后,将员工部门编号作为key,具体员工工作为value,放入到multimap容器中。map不允许插入重复key元素,count统计而言,结果要么是0,要么是1;pair中第一个元素为key键值,起到索引作用,第二个元素为value实值。//key部门编号,value具体员工。//遍历vector容器,取出每个员工,进行随机分组。//产生随机部门编号。

2023-12-21 11:57:46 344

原创 set容器排序

/指定排序规则为从大到小。

2023-12-21 11:38:54 376

原创 set容器和multiset容器

cout << "找到元素:" << *pos << endl;cout << "第一次插入成功" << endl;cout << "第一次插入失败" << endl;cout << "第一次插入成功" << endl;cout << "第一次插入失败" << endl;cout << "未找到元素:" << endl;//set容器特点:所有元素插入时候自动被排序。set不可以插入重复数据,而multiset可以。//set容器 和multiset容器的区别。//set容器不允许插入重复值。

2023-12-21 11:37:53 361

原创 list容器

备注:list有一个重要的性质,插入操作和删除操作都不会造成原有list迭代器的失效,这在vector是不成立的。inset(pos,beg,end):在pos位置插入[beg,end]区间的数据,无返回值。cout << "第一个元素为:" << L1.front() << endl;cout << "最后一个元素为:" << L1.back() << endl;insert(pos,elem):在pos位置插elem元素的拷贝,返回新数据的位置。//L1[0] 不可以用[]访问list容器中的元素。

2023-12-21 11:36:20 313

原创 deque容器

deque内部工作原理:deque内部有个中控器,维护每段缓冲区中的内容,缓冲区中存放真实数据。中控器维护的是每个缓冲区的地址,使得使用deque时像一片连续的内存空间。对于支持随机访问的迭代器的容器,都可以利用sort算法直接对其进行排序。vector访问元素的速度会比deque快,这和两者内部实现有关。vector对于头部的插入删除效率低,数据量越大,效率越低。deque相对而言,对头部的插入删除速度会比vector快。//insert插入。82.deque插入和删除。//deque容器排序。

2023-12-21 11:34:42 352

原创 vector容器

cout << "v1的容量: " << v1.capacity() << endl;cout << "v1的大小: " << v1.size() << endl;cout << "v的容量为:" << v.capacity() << endl;cout << "v的容量为:" << v.capacity() << endl;cout << "v的大小: " << v.size() << endl;cout << "v的大小: " << v.size() << endl;

2023-12-21 11:33:37 314

原创 string字符

/string字符存取。//字符串的插入和删除。

2023-12-21 11:30:28 406

原创 【无标题】

好难啊(累死)

2023-12-21 10:33:25 294

原创 指针变量,也即传递的是地址

一般来讲,32位编译系统,对short、int分配2byte空间,对float、double、long、long long分配4byte长度。long、long long、float、double数据类型的长度则不尽相同,从而在计算除char类型以外的数据长度时,需要查看该编译器对数据类型的空间长度配置信息。2、数组与指针的共同之处在于:数组用的“下标法”指向数据,指针用的“地址”指向数据,两者在进行编译时,是等价的。这是因为:实参数组名代表一个固定的地址(也即数组首元素的地址),固定的地址非变量;

2023-12-21 10:24:53 420

原创 今日打卡(被指针戳死)

2、BOOL布尔变量与零值比较:不可将BOOL变量与TRUE、FALSE、0、1比较。3、如果指针变量*p指向数组a[10],则p也可以带“下标”,即p[i]语法正确,其相当于*(p+i)。4、浮点变量与零值比较:不可将浮点变量与诸如0.0、0.1、0.200之类的数用==、!则有:*(a + i) 和*(p + i)等同,都是指向a[i]延伸1:对于数组a,有:(a + 1)指向的是数组a的第2个元素a[1]。5、指针变量与零值比较:应当用==、!3、整形变量与零值比较:采用==、!

2023-12-21 10:20:24 330

原创 打卡一个简单的函数

/void代表无返回值,swap为函数名,(int a,int b)代表定义两个整数,存储函数的输入值。swap(a,b);

2023-12-20 22:49:42 378 1

原创 变量给指针赋值

2、C语言的函数调用,实参变量与形参变量之间的传递:①方向:“单向的”,即实参变量-->形参变量,反之则不行。③函数的返回值数量:有且只有一个。b)常数:前提是指针p已经定义,且已赋值。(正确)而int *p;a)变量名:p = &a;(正确) 而 *p = a;定义指针变量,同时对其进行初始化:int *p = &a;deliver(p);(正确) 而deliver(*p);3、在被调函数中改变实参指针所指向变量的值,可以改变主调函数中变量的值。指针类型函数参数的传递,传的是“地址”。

2023-12-20 18:01:33 504 1

原创 指针及变量的地址

如果是,则int insulation_const(void)正确,而void insulation(void)则错误。2、弄懂指针,首先要明确变量的存储和读取。如果程序中定义了变量A,则编译时,会对A分配内存单元(即一定长度的空间,长度根据编译系统及变量数据类型定),3、指针的由来:一般的变量(例如 i=3)为直接访问变量的值,而指针可以通过间接方式(变量的地址)访问变量的值。也即:程序经过编译后,变量名A转换为了A的地址,对A的存取都是通过该地址进行的。1、指针即为一个变量的地址。

2023-12-20 17:59:00 326 1

原创 函数内调用

5、static的使用:用auto, register, static声明变量时,需跟变量定义一起用,而不能单独使用。2)用static声明局部变量:使该变量存储在静态存储区,程序执行过程中不会释放所分配的空间。2、C-Free不支持主函数为空函数的写法:void main(){};

2023-12-20 17:56:30 392 1

原创 今日日志

提倡用以下方式避免在该种情况下使用extern:在源程序文件的开头或者引用A的所有函数之前定义A;定义形参变量为全局变量,然后在调用函数中用extern声明该变量,将形参变量的作用域扩展到调用函数中。3、关键字extern的定义:对变量用extern作“外部变量声明”,表示把该外部变量的作用域扩展到此位置。4、extern的由来:一个全局变量A的作用域:从定义处到文件结束,在A定义之前的函数不能引用A这个外部变量。而且,一个程序中的多个源程序文件中都定义了外部变量A,则在进行程序的连接时会报错:重复定义。

2023-12-20 17:54:32 342 1

原创 奖学金(嘿嘿嘿)

2023-12-20 17:46:31 353 1

原创 谁能不爱贪心呢,是人都会贪心的(滑稽)

哇吼吼,又变厉害了。

2023-12-20 17:38:28 333 1

原创 今天的题好难(看的眼睛疼)

气得我直接就弄了个二维数组。

2023-12-20 17:33:52 351 1

原创 学c语言心得

开发环境所提供的编译系统无法发现这种程序逻辑错误,只能靠自己的上机经验分析判断错误所在。程序的调试是一个技巧性很强的工作,对于初学者来说,尽快掌握程序调试方法是非常重要的。自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自已对 C 语言的理解和程序开发能力。2.熟悉程序开发环境、学习计算机系统的操作方法通过上机实验,熟练地掌握 C 语言开发环境,为以后真正编写计算机程序解决实际问题打下基矗同时,在今后遇到其它开发环境时就会触类旁通,很快掌握新系统的使用。

2023-12-20 17:27:22 337 1

原创 每日一题(有点难)

题目难度一般,不过刚刚好适应我这种新手。

2023-12-20 17:22:58 350 1

原创 写程序心得

抄程序的方法但我认为它是进步最快的方法,抄程序是积累经验的时候,而做项目才是真正把所学为所用的时候,可以说只有你做一个大点的项目出来才能真正是说明你学到了东西,你会用所学的东西,要不然就算你学的再多,不会用也没用。你一定要把它几乎所有的用方法都能清楚明白,一句话要学精了,语法掌握住了,接下来就是写程序了,其实抄程序并不是说一直没有目的去抄,你会发现当你抄一段时间以后就不用再抄了,因为大部分都是一样的你一看就知道怎么写了,当你一看到程序就知道它什么功能,那里有错的时候。

2023-12-20 17:14:49 327 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除