IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> C++利用数组处理数据 -> 正文阅读

[游戏开发]C++利用数组处理数据

一维数组:

一般定义格式:类型名 数组名[常量表达式];例如 int a[10]; int a[2*5];
使用方式:数组名[下标]例如a[3],长度为n的数组,其合法下标范围为[0~n-1]。

数组初始化:

  • 定义时初始化:
    • int a[] = {0, 1, 2, 3, 4}; //该方式可以不指定数组长度
    • int a[10] = {0, 1, 2, 3, 4}; //只对前5个元素赋值,其余元素值为空
  • 通过数组名赋值:
    • a[5] = {0, 1, 2, 3, 4};
    • for(int i = 0; i < n; i++) cin >> a[i]; //给前n个元素赋值


二维数组:

一般定义格式:类型名 数组名[常量表达式1][常量表达式2];例如 int b[10][11]; int b[2*5][5*2];
使用方式:数组名[下标1][下标2]例如b[3][4]

数组初始化:

  • 定义时初始化:
    • int b[][2] = {0, 1, 2, 3, 4}; //该方式可以忽略第一个参数,但必须设置第二个参数该
    • int b[3][2] = {0, 1, 2, 3, 4}; //只对前5个元素赋值,其余元素值为空
    • int b[3][2] = {{0, 1}, {2, 3}, {4}};
  • 通过数组名赋值:
    • b[3][2] = {0, 1, 2, 3, 4};
    • 双层for循环进行赋值。


字符数组(char):

一般定义格式:类型名 数组名[常量表达式];例如 char c[10]; char c[2*5];
使用方式:数组名[下标]例如c[3]

数组初始化:

  • 定义时初始化:
    • char c[] = {'w', 'i', 'n', 'd'}; //该方式可以不指定数组长度
    • char c[10] = {'w', 'i', 'n', 'd'}; //只对前4个元素赋值,其余元素值为空'\0'
  • 通过数组名赋值:
    • 无法通过赋值语句给整个数组赋值。
    • c[4] = {'w', 'i', 'n', 'd'}; //一般要在末尾添加‘\0'即写为c[5]={'w', 'i', 'n', 'd', '\0'};
    • for(int i = 0; i < n; i++) cin >> char[i]; //给前n个元素赋值

常用函数:

  • 字符串连接函数:strcat_s(char c1[], const char c2[]); //新版需要使用更安全的_s函数
    • 功能:将c2连接到c1后面。
    • 注意事项:使用时会自动检查连接后是否超长,超过c1长度时会弹出异常。
  • 字符串复制函数:strcpy_s(char c1[], const char c2[]); //新版需要使用更安全的_s函数
    • 功能:将c1复制为c2的值。
    • 注意事项:使用时会自动检查是否越界,c2超过c1长度时会弹出异常。
  • 字符串比较函数:strcmp(const char c1[], const char c2[]);
    • 功能:比较c1与c2的大小,c1=c2时return 0; c1>c2时return 1; c1<c2时return -1;
    • 注意事项:直接使用c1>c2时,进行的是地址比较。
  • 字符串长度函数:strlen(const char c[]);
    • 功能:得到数组c[]的长度。


字符串数组(string):

使用时需要#include<string>
一般定义格式:类型名 数组名[常量表达式];例如 string s[10]; string s[2*5];
使用方式:数组名[下标]例如s[3]

数组初始化:

  • 定义时初始化:
    • string str[] = {"wind", "test"}; //该方式可以不指定数组长度
    • string str[10] = {"wind", "test"}; //只对前2个元素赋值,其余元素值为空
  • 通过数组名赋值:
    • str[1] = "wind";
    • str[1[[0] = 'e'; //此时str[1] = "eest"

常用运算:

  • 字符串赋值:str1 = str2; //<string>库中重载了'='运算符使得可以直接赋值
  • 字符串相加:str = str1 + str2; //<string>库中重载了'+'运算符使得可以直接相加
  • 字符串比较:可直接使用>、<、>=、<=、==、!=进行比较原因同上。
  • 字符串长度函数:可使用str.length();得到数组c[]的长度。


用数组做函数参数:

可以使用数组做实参/形参。使用时一维数组直接传地址,二维数组则需要传数组名。(使用数组做实参时,数组内的值会一同改变)

//定义数组如下:
int array[3][4]={...};

//定义四个函数调用array[3][4]数组。
int func1(int array[][]);	//错
int func2(int array[3][4]);	//对
int func3(int array[][4]);	//对
int func4(int array[]);		//错

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 16:21:40  更:2022-04-06 16:23:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 19:59:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码