数据结构学习-数组和指针

写在前面

现代c++程序应尽量使用vector和迭代器类型,而避免使用低级的数组和指针(因为使用数组的程序更容易出错而且难以调试),只有在强调速度的时候才会在类实现的内部使用数组和指针。

一句话描述指针:指针是存放内存地址编号的变量

一、数组和指针基础知识

(1)数组

数组可以存储一组值,所有值均具有相同的数据类型。这些值一起存储在连续的内存位置。数组有以下几个特点:

  • 数组长度固定,一经创建,就不允许添加新的元素,而vector是动态数组,长度可变,能使用push_back添加新元素。
  • 不允许直接赋值与复制,只能一个元素一个元素的赋值,也可以显式的提供元素的初值。
  • 如果必须向数值内添加新元素,就必须创建更大内存的数组,然后将原有数组复制到新的内存空间中去。
  • 数组名有两个用途:1.代表数组首地址;2. 可以得到整个数组所占的内存空间;

多维数值

多维数组最简单的形式是二维数组。一个二维数组,在本质上,是一个一维数组的列表。声明一个 x 行 y 列的二维整型数组。
创建访问和输出和一维数组类似。

#include "pch.h"
#include <iostream>
using namespace std;
#include <iomanip>
using std::setw;

int main()
{
   
	//多维数组,最简单的多维数组是二维数组
	int duoweishuzu[1][2][3];
	int erweishuzu[2][2] = {
    1, 2, 3, 4};

	//二维数值初始化
	int erweishuzu1[2][2];
	erweishuzu1[1][1] = 4;

	//访问二维数组
	std::cout << "Element" << setw(13) << "Value" << endl;
	for (int i = 0; i < 2; i++)
	{
   
		for (int j = 0; j < 2; j++)
		{
   
			std::cout << "erweishuzu value[" <<i<<"]["<<j<<"]"<<setw(6) << erweishuzu[i][j] 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值