C++指针总结

内存

计算机的内存由数以万计的位(bit)组成,通常由许多位合成一组作为一个单位。其中一个称为字节(byte),每个字节包含八个位。


1.内存中的每个位置由一个独一无二的地址标识。

2.内存中的每一个位置都包含了一个值。

变量(名字)与内存位置之间的关联并不是硬件提供的,它是由编译器为我们实现的,硬件任然通过地址访问内存位置。


指针

指针的初始化是用&操作符完成的。

间接访问操作符*:通过一个指针访问它所指向的地址过程称为间接访问。

当间接访问的时候他表示访问内存位置并查看那里的值。

指针的作用:间接访问内存

在对指针进行间接访问之前,必须确保它们已经被初始化。若指针的初始值是个非法地址(野指针),就会终止程序,提示出错,若指针为合法地址,则那个位置将会被修改。

NULL指针

作为一个特殊指针,表示不指向任何东西

空指针:指针变量指向的内存中编号为0的空间

用途:初始化指针变量

注意:空指针指向的内存是不可以访问的。

const指针

 

 

 

运用指针数组和函数实现冒泡排序

#include <iostream>
#include <string>
using namespace std;

//这个函数是用来比较数组中的数的大小,用冒泡排序
void bubblesort(int *arr, int len)
{
	for (int i = 0; i < len-1; i++)
	{
		//比较的次数越来越少,注意掌握规律。
		for (int j = 0; j < len - i - 1; j++)
		{
			if (arr[j] > arr[j + 1])
			{
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
}

void printarray(int *arr, int len)
{
	for (int i = 0; i < len; i++)
	{
		cout << arr[i] << endl;
	}
}
int main()
{
	//创建数组
	int arr[10] = { 4,3,6,9,1,2,10,8,7,5 };

	int len = sizeof(arr)/sizeof(arr[0]);

	bubblesort(arr, len);

	printarray(arr, len);


	system("pause");
	return 0;
}

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ShasHashALU

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值