数组与指针"/>
网龙C++游戏训练营培训课程第一阶段(上):数组与指针
6月有幸参加网龙游戏公司推出的C++线上培训课程,为期一个月。分为四个阶段,即- C++中的重要内容
- 网络编程
- 数据库设计
- 游戏设计与实现
1.数组
数组用以存储一系列相同类型元素的集合 。这部分内容主要掌握一维、二维和多维数组的声明、初始化、赋值和引用。一维、二维以及多维数组定义如下:
示例:
#include "stdafx.h"
#include<iostream>
using namespace std;
int main()
{//一维数组int score[5] = { 1,2,3,4,5 };cout << "一维输出:" << endl;for (int i = 0; i < sizeof(score) / sizeof(int); i++){cout << score[i] <<" ";}cout << endl;//二维数组int mark[2][3] = { {89,90,91},{90,91,92} };cout << "Column:" << sizeof(mark) / sizeof(mark[0]) << endl;cout <<"Row:"<< sizeof(mark[0]) / sizeof(mark[0][0]) << endl;cout << "二维输出:" << endl;for (int i = 0; i < sizeof(mark) / sizeof(mark[0]); i++){for (int j = 0; j < sizeof(mark[0]) / sizeof(mark[0][0]); j++){cout << mark[i][j] << " " ;}cout << endl;}//多维数组int abc[3][2][3] = { {{1,2,3},{3,4,5}},{{5,6,7},{7,8,9}},{{9,10,11},{11,12,13}} } ;cout << "三维输出:" << endl;for (int i = 0; i < sizeof(abc) / sizeof(abc[0]); i++){for (int j = 0; j < sizeof(abc[0]) / sizeof(abc[0][0]); j++){for (int k = 0; k < sizeof(abc[0][0]) / sizeof(abc[0][0][0]); k++){cout << abc[i][j][k] << " ";}cout << " ";}cout << endl;}return 0;
}
结果如下图: 2.指针
指针用以访问内存单元的地址与数据,定义如下。示例:
int main()
{int a = 1;int *p = &a;cout << "a的地址:" << &a << endl;cout << "p指向的地址:" << p << endl;cout << "p指向地址的值:" << *p << endl;int b = 2;int c = 3;int *q = nullptr; //定义空指针int *q1 = &b;int *q2 = &c;cout << "q1指向地址的值:" << *q1 <<endl;cout << "q2指向地址的值:" << *q2 << endl;cout << "交换后:" << endl;q = q1; //交换指针地址q1 = q2;q2 = q;cout << "q1指向地址的值:" << *q1 << endl;cout << "q2指向地址的值:" << *q2 << endl;return 0;
}
结果如下 3.数组与指针的关系
指针在数组中的表现情况用如下例子说明:int main()
{int a[3] = { 0,1,2 };int *p = nullptr;int *pa = nullptr;p = &a[0];pa = p + 1; //指向a[1]cout << pa << endl;cout << *pa << endl;pa = p + 2; //指向a[2],距离地址增加4个字节cout << pa << endl;cout << *pa << endl;pa = p + 3;cout << pa << endl;cout << *pa << endl;return 0;
}
N
结果如下:
JVYC-BMHX2-G77MM-
更多推荐
网龙C++游戏训练营培训课程第一阶段(上):数组与指针
发布评论