菜鸟
屁股最红的程序猿
灵魂有火,野心勃勃
展开
-
结构体的相关知识
概念:结构体属于用户自定义的数据类型,允许用户存储不同的数据类型结构体的定义和使用语法:struct结构体名 {结构体成员列表};通过结构体创建变量的方式有三种:1.struct 结构体名 变量名;//然后具体逐个赋值即可;2.struct 结构体名 变量名={成员值1,成员值2,...};//使用这种方法的时候,赋值一定要按照结构体中成员列表的顺序进行赋值,成员值1,成员值2,成员值3 ,... 3.定义结构体时候顺便创建变量; //直接在结构体定义完之后...原创 2022-05-15 21:07:35 · 254 阅读 · 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 · 114 阅读 · 0 评论 -
指针和函数——值传递和地址传递
#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 · 146 阅读 · 0 评论 -
指针和数组
作用:使用指针来访问数组中的元素;数组名就是首地址;指针++就是向后移动该数据类型所占内存的单位,例如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 · 59 阅读 · 0 评论 -
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 · 5257 阅读 · 3 评论 -
指针所占的内存空间 空指针和野指针
32位操作系统下为 4个字节64位操作系统下为 8个字节可以使用cout<<sizeof(*p)<<endl;来查看空指针和野指针空指针:指针变量指向内存中编号为0的空间;空指针的作用:用于给指针变量初始化;//例: int*p=NULL;这里的NULL就是对指针p进行初始化;注意!空指针指向的内存是不可以访问的 因为0~255号内存是系统所占用的,因此不可以访问;野指针:指针变量指向非法的内存空间;空指针和野指针都不是我们申请的内存.原创 2022-05-12 20:57:30 · 1052 阅读 · 0 评论 -
指针相关内容
指针的作用:可以通过指针来间接地访问内存;使用指针变量来保存地址;指针定义的语法:数据类型 * 指针变量名//这个数据类型是根据指针指向的内存的类型来定义的,指针变量名一般为p 是因为p 是英文//point 指向 的缩写,当然 也可以使用其他的变量名 比如x 或者任意其他的;int*p=&a; //或者 int*p;p=&a; 这两种都可以,其中&符号表示的是取地址,*是指针变量的标识符,如果想修改指针变量指向的内存的话,可以使用解引用的方式,也就是..原创 2022-05-12 16:43:43 · 59 阅读 · 0 评论 -
函数的分文件编写
函数分文件编写分为四步:1.创建一个后缀名为.h的头文件;2.创建一个后缀名为.cpp的源文件;3.在头文件中写函数的声明;4.在源文件中写函数的定义;然后要使用的话,就在文件开始写上#include“ .h”;//这个头文件中的双引号代表我们自己写的头文件;...原创 2022-05-12 16:00:33 · 328 阅读 · 0 评论 -
为什么要进行函数声明
函数的声明可以有多次,但函数的定义只能有一次;函数声明的目的:是为了提前告诉编译器有这个函数的存在,避免当在main函数之后写函数的定义 的时候,这种时候如果不提前声明函数,那么就会报错,因为这时候main函数中使用了我们定义的函数名,可是在mian函数前我们并没有提到这个函数名,就会导致出错;所以!这个时候,函数的声明就十分有必要了;这时候呢 你可能会有一个疑问,我们直接把函数的定义写在main函数之前不就得了,确实,这么做确实可以,存在一个函数 ,两个函数,甚至三四个函数的时候,我们都可以这..原创 2022-05-12 15:38:07 · 4017 阅读 · 0 评论 -
交换函数及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 · 617 阅读 · 0 评论 -
关于函数.
//今天开始从函数学起,学了一个简单的加法函数;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 · 132 阅读 · 1 评论