自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 结构体的相关知识

概念:结构体属于用户自定义的数据类型,允许用户存储不同的数据类型结构体的定义和使用语法:struct结构体名 {结构体成员列表};通过结构体创建变量的方式有三种:1.struct 结构体名 变量名;//然后具体逐个赋值即可;2.struct 结构体名 变量名={成员值1,成员值2,...};//使用这种方法的时候,赋值一定要按照结构体中成员列表的顺序进行赋值,成员值1,成员值2,成员值3 ,... 3.定义结构体时候顺便创建变量; //直接在结构体定义完之后...

2022-05-15 21:07:35 228 1

原创 指针,数组,函数

案例描述:封装一个函数,利用冒泡排序,实现对整型数组的升序排列;例如数组intarr [10]={4,3,6,9,1,2,10,8,7,5};传数组,就要定义指针作为形参来接收这个首地址,与之前冒泡排序的不同之处是:之所以写这个,就是为了对任意的整型数组都能实现升序排列,而之前写的冒泡排序仅仅是对固定的一个数组写出的特定代码;void bubbleSort(int *arr,int len);中一个是首地址,一个是该数组的长度;求数组长度:int len=sizeof(a..

2022-05-13 15:56:19 109

原创 学习冒泡排序

作用:最常见的排序算法,对数组内元素进行排序;1.比较相邻元素,如果第一个比第二个大,那么交换他们两个;2.对每一对相邻元素做同样的操作,执行完毕后,找到第一个最大值;3.重复以上操作,每次比较次数-1,直到不需要比较;外侧循环为:总共排序的大轮数=元素个数-1;内侧2循环为:相邻两个元素做比较的次数=元素个数-当前轮数-1;#include<iostream>using namespace std;int main(){ //利用冒泡排序实现

2022-05-13 13:02:22 218

原创 指针和函数——值传递和地址传递

#include<iostream>using namespace std; void swap01(int a,int b){ int temp=a; a=b; b=temp; cout<<"形参a:"<<a<<endl; cout<<"形参b:"<<b<<endl; } void swap02(int *p1,int *p2){ int temp0.

2022-05-13 12:18:47 120

原创 指针和数组

作用:使用指针来访问数组中的元素;数组名就是首地址;指针++就是向后移动该数据类型所占内存的单位,例如int *p,p++,就是向后偏移了四个单位;#include<iostream>using namespace std;int main(){ int arr[10]={1,2,3,4,5,6,7,8,9,10}; cout<<"第一个元素为:"<<arr[0]<<endl; int *p=arr;//注意!..

2022-05-13 11:43:59 50

原创 const修饰指针

const修饰指针有三种情况:1.const修饰指针——常量指针;2.const修饰常量——指针常量;3.const既修饰指针,又修饰常量;一. const修饰指针——常量指针:constint *p=&a;特点:常量指针的指向可以修改,但指针指向的值不可以改;#include<iostream>using namespace std;int main(){ int a=10; int b=20; const int*..

2022-05-13 00:07:18 5145 3

原创 指针所占的内存空间 空指针和野指针

32位操作系统下为 4个字节64位操作系统下为 8个字节可以使用cout<<sizeof(*p)<<endl;来查看空指针和野指针空指针:指针变量指向内存中编号为0的空间;空指针的作用:用于给指针变量初始化;//例: int*p=NULL;这里的NULL就是对指针p进行初始化;注意!空指针指向的内存是不可以访问的 因为0~255号内存是系统所占用的,因此不可以访问;野指针:指针变量指向非法的内存空间;空指针和野指针都不是我们申请的内存.

2022-05-12 20:57:30 1018

原创 指针相关内容

指针的作用:可以通过指针来间接地访问内存;使用指针变量来保存地址;指针定义的语法:数据类型 * 指针变量名//这个数据类型是根据指针指向的内存的类型来定义的,指针变量名一般为p 是因为p 是英文//point 指向 的缩写,当然 也可以使用其他的变量名 比如x 或者任意其他的;int*p=&a; //或者 int*p;p=&a; 这两种都可以,其中&符号表示的是取地址,*是指针变量的标识符,如果想修改指针变量指向的内存的话,可以使用解引用的方式,也就是..

2022-05-12 16:43:43 48

原创 函数的分文件编写

函数分文件编写分为四步:1.创建一个后缀名为.h的头文件;2.创建一个后缀名为.cpp的源文件;3.在头文件中写函数的声明;4.在源文件中写函数的定义;然后要使用的话,就在文件开始写上#include“ .h”;//这个头文件中的双引号代表我们自己写的头文件;...

2022-05-12 16:00:33 323

原创 为什么要进行函数声明

函数的声明可以有多次,但函数的定义只能有一次;函数声明的目的:是为了提前告诉编译器有这个函数的存在,避免当在main函数之后写函数的定义 的时候,这种时候如果不提前声明函数,那么就会报错,因为这时候main函数中使用了我们定义的函数名,可是在mian函数前我们并没有提到这个函数名,就会导致出错;所以!这个时候,函数的声明就十分有必要了;这时候呢 你可能会有一个疑问,我们直接把函数的定义写在main函数之前不就得了,确实,这么做确实可以,存在一个函数 ,两个函数,甚至三四个函数的时候,我们都可以这..

2022-05-12 15:38:07 3956

原创 函数的常见样式

1.无参无返;2.无参有返;3.有参无返;4.有参有返;一 无参无返#include<iostream>using namespace std; void test01()//注意 这里小括号里面不能写参数, //不然就不是所谓的“无参”了就是 //"有参无返“了; { cout<<"this is test01;"<<endl; return; } int main(){ //

2022-05-10 17:26:48 454

原创 交换函数及void用法 和所谓的 “当我们做值传递的时候,形参发生改变,并不会影响实参”

了解了一下交换函数,知道了函数不需要返回值的时候,函数声明的时候可以写void;#include<iostream>using namespace std;void swap(int num1,int num2){ cout<<"交换前:"<<endl; cout<<"num1="<<num1<<endl; cout<<"num2="<<num2&...

2022-05-10 16:39:15 585

原创 关于函数.

//今天开始从函数学起,学了一个简单的加法函数;include<iostream>using namespace std;int add(int num1,int num2){ int sum=num1+num2; return sum;}int main(){ int a=10; int b=20; int c=add(a,b); cout<<"c="<<c<<endl;}..

2022-05-10 11:25:54 89 1

空空如也

空空如也

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

TA关注的人

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