数据类型 数组名[整常量表达式][ 整常量表达式]={ 初始化数据 };
在{ }中给出各数组元素的初值,各初值之间用逗号分开。把{ }中的初值依次赋给各数组元素。
有如下几种初始化方式:
⑴ 分行进行初始化

int a[2][3]={{1,2,3},{4,5,6}};

在{ }内部再用{ }把各行分开,第一对{ }中的初值1,2,3是0行的3个元素的初值。第二对{ }中的初值4,5,6是1行的3个元素的初值。相当于执行如下语句:

int a[2][3];
a[0][0]=1;a[0][1]=2;a[0][2]=3;a[1][0]=4;a[1][1]=5;a[1][2]=6;

注意,初始化的数据个数不能超过数组元素的个数,否则出错。

⑵ 不分行的初始化

int a[2][3]={ 1,2,3,4,5,6};

把{ }中的数据依次赋给a数组各元素(按行赋值)。即a[0][0]=1; a[0][1]=2;a[0][2]=3;a[1][0]=4;a[1][1]=5;a[1][2]=6;

⑶ 为部分数组元素初始化

static int a[2][3]={{1,2},{4}};

第一行只有2个初值,按顺序分别赋给a[0][0]和a[0][1];第二行的初值4赋给a[1][0]。由于存储类型是static,故其它数组元素的初值为0。注:某些C语言系统(如:Turbo C)中,存储类型不是static的变量或数组的初值也是0。
static int a[2][3]={ 1,2};
只有2个初值,即a[0][0]=1,a[0][1]=2,其余数组元素的初值均为0。

⑷ 可以省略第一维的定义,但不能省略第二维的定义。系统根据初始化的数据个数和第2维的长度可以确定第一维的长度。

int a[ ][3]={ 1,2,3,4,5,6};

a数组的第一维的定义被省略,初始化数据共6个,第二维的长度为3,即每行3个数,所以a数组的第一维是2。
一般,省略第一维的定义时,第一维的大小按如下规则确定:
初值个数能被第二维整除,所得的商就是第一维的大小;若不能整除,则第一维的大小为商再加1。例如,int a[ ][3]={ 1,2,3,4};等价于:int a[2][3]={ 1,2,3,4};
若分行初始化,也可以省略第一维的定义。下列的数组定义中有两对{ },已经表示a数组有两行。
static int a[ ][3]={{1,2},{4}};

C++二维数组初始化的形式相关推荐

  1. 二维数组初始化的形式有?

    二维数组初始化的形式有? 数据类型 数组名[整常量表达式][ 整常量表达式]={ 初始化数据 }: 在{ }中给出各数组元素的初值,各初值之间用逗号分开.把{ }中的初值依次赋给各数组元素. 有如下几 ...

  2. golang二维数组初始化

    golang二维数组初始化来看一下,有点特别 func main() {x := 2y := 4table := make([][]int, x)for i := range table {table ...

  3. c# 怎样从bitmap初始化image类_C#二维数组初始化概括(新手篇)

    群友反馈的一个问题: 运行报错: 这个主要是数组定义的有问题,二维数组初始化:如下这样 string[,] aaa = new string[10, 10]; 其次得确保data在截取Substrin ...

  4. C语言的二维数组初始化的几种方式介绍(私藏大数组初始化方式)

    C语言的二维数组初始化的几种方式介绍 1.直接赋值 2.循环对每个元素赋值 3.借用memset/memset_s初始化为0或-1 4.`数组所有元素初始化为相同值(用于大数组初始化贼方便)` 1.直 ...

  5. [Python] 二维数组初始化实践

    背景 参考博客Python二维数组初始化问题_NobiShinnosuke的博客-CSDN博客_python 二维数组初始化,文中提到正确的初始化方式是a = [[0 for j in range(n ...

  6. c++ fill 二维数组初始化_C++如何给二维数组初始化

    C++给二维数组初始化的方法:首先定义两个整型变量,并给二维数组初始化不同的数值:然后用二重循环,输出数组中的各个数值:最后用大括号括起来的数字直接赋值. 本文操作环境:Windows7系统,Dev- ...

  7. java二维数组初始化值_Java二维数组初始化的方法

    对于一个新使用的工具,我们会进行初步的初始化工具,目的是为了加上一些使用的配置.在学过了一维数组后,那么二维数组是加了一层维度的一维数组.在初始化方面,二维数组有三种方法,相信很多人只是掌握了其中的一 ...

  8. c语言二维数组初始化_6.2 C语言二维数组

    01二维数组的定义 1.一般形式 类型说明符 数组名[常量表达式][常量表达式] 2.例子 int a[10][6],b[3][4]; 3.用矩阵形式表示二维数组,是逻辑上的概念,能形象地表示出行列关 ...

  9. 二维数组初始化_0基础学习C语言第七章:数组(2)

    C语言 多维数组 C 语言支持多维数组.多维数组声明的一般形式如下: type name[size1][size2]...[sizeN]; 例如,下面的声明创建了一个三维 5 . 10 . 4 整型数 ...

最新文章

  1. 微软云服务器多ip,Azure 虚拟机的多个 IP 地址 - 门户 | Microsoft Docs
  2. 计算机应用基础 辅助教学系统,计算机应用基础课程辅助教学和智能测评系统使用手册——网络版.doc...
  3. 关于TensorFlow你需要了解的9件事
  4. PL/SQL学习笔记-过程
  5. Openstack_通用模块_Oslo_vmware 创建/删除 vCenter 虚拟机
  6. 字节跳动学习笔记:javaweb商城项目
  7. linux bin文件制作
  8. Session ,ViewState,以及接收其它网页传过来的值的使用
  9. cad常青藤插件_CAD 2020软件安装包+插件大合集+完整视频教程,自学也可以的
  10. @Scope(prototype)
  11. Bristol的第18篇密码学
  12. Baby‘s first attempt on CPU(贪心+模拟)
  13. 通通玩blend美工(3)——可爱的云
  14. BooKu手机电子书阅读器,正式推出了
  15. 三种常见的ps删除通道的操作
  16. 中国女人比美国女人好在哪?
  17. 网络服务器是干什么用的
  18. 【校园快递信息系统——开题报告 分享(仅供参考呀)】
  19. 云备份的正确打开方式,你学会了吗?
  20. java8历史版本下载地址

热门文章

  1. 记软测面试问题(1)
  2. TensorFlow实现梯度下降法求解一元和多元线性回归问题
  3. Vscode软件,如何启动vue项目
  4. Acne Scarring Treatment
  5. Java中对索引的知识总结
  6. windows上安装python-ldap
  7. hightCharts制作三维立体图
  8. ffplay工具命令使用技巧浅析
  9. 图像解析力算法—SFR(Spatial Frequency Response)概念理解
  10. HJ100 等差数列