#include<stdio.h>
#include<iostream>
using namespace std;
int main ()
{
    int a[3][2] = {(0,1),(2,3),(4,5)};//注意逗号表达式
int *p;
p = a[0];
cout << p[0]<<endl;
return 0;
}

#include<stdio.h>
#include<iostream>
using namespace std;
int main ()
{int a[3][2] = {(0,1),(2,3),(4,5)};//注意逗号表达式int *p;p = a[0];cout << p[0]<<endl;return 0;
}

二维数组初始化的形式为:

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

二维数组定义及初始化相关推荐

  1. c++二维数组定义与初始化

    int a[ ][ ]定义二维数组,静态申请 // 定义的二维数组如果不手动初始化的话,全局变量会被初始化为0,否则会随机初始化 int a[5]; // 定义一维数组 int a[2][3]; // ...

  2. js二维数组定义和初始化的三种方法

    方法一:直接定义并且初始化,这种遇到数量少的情况可以用 var _TheArray = [["0-1","0-2"],["1-1",&quo ...

  3. C语言 二维数组定义和使用 - C语言零基础入门教程

    目录 一.二维数组简介 二.定义二维数组并初始化 1.定义二维数组 2.初始化二维数组 三.访问二维数组 四.修改二维数组 五.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 & ...

  4. 【C#】C#二维数组定义方法

    文章目录 C#二维数组定义方法 C#二维数组定义方法 C#项目中,可参考如下方式定义二维数组: string[] b= new string[10]; string[][] a= new string ...

  5. 【C语言】二维数组定义以及引用

    接着上面一期进行,二维数组的一些了解,代码均来自于VS编译环境下. 一.怎样定义二维数组 二维数组和一维数组一样,二维数组的定义方式如下:   类型说明符 数组名[常量表达式][常量表达式] 注意一个 ...

  6. C语言二维数组元素的初始化

    二维数组的4种数组初始化: 一.直接分行给二维数组赋初值 例:int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};   //推荐使用此方便赋值数组 二.将所有 ...

  7. java二维数组两种初始化方法

    写这篇博客的原因是因为从大一学习c语言开始 就对二维数组的声明 和初始化 一直没有搞懂....直到学到了Java依旧搞得不是很清楚. 先看一道Java的基础题 这道题 错误的选项 是 B. 二维数组的 ...

  8. C++——C++创建动态二维数组+memset()函数初始化

    C++开辟动态二维数组的几种方法总结 原文链接:https://blog.csdn.net/xiang_shao344/article/details/99684395 一.用 new 来动态开辟一个 ...

  9. Java二维数组声明与初始化

    package 调度算法;public class Diaodu {public static void main(String[] args) {String name[][]= {{"进 ...

  10. C语言 一维数组、二维数组的创初始化、使用和存储

    目录 数组 一维数组 一维数组的创建和初始化 一维数组的定义 一维数组的初始化 完全初始化 不完全初始化 一维数组的使用 一维数组的使用代码示例 一维数组在内存中的存储 代码示例 二维数组 二维数组的 ...

最新文章

  1. 安装neo1973的GPS驱动[转]
  2. 序列化和反序列化的概念与延伸【详细解释 + 样例演示】
  3. ssl协议及开源实现openssl
  4. C语言九十五之实现经典的反转数组(通过指针或数组下标操作)
  5. 信息学奥赛C++语言: 队伍调整
  6. lisp坐标一键生成_Grasshopper自动生成坡度标注
  7. modulenotfounderror python_python程序在命令行执行提示ModuleNotFoundError: No module named 'XXX' 解决方法...
  8. 什么是python装饰器_深入理解 Python 装饰器
  9. 哪些是常见的大数据分析模型
  10. 如何监控 Nginx?
  11. atitit.DD dragdrop拖拽文件到界面功能 html5 web 跟个java swing c#.net c++ 的总结
  12. java开发实例大全_java编程实例大全100例
  13. android流光字体实现,CSS实现字体流光/高光滑动
  14. JMeter性能测试之使用CSV文件参数化
  15. 开发快手爬票项目(中)
  16. 树莓派3安装系统linux,树莓派3 安装Fyde OS
  17. 看我如何做基于扑克牌模式识别系统的设计与实现
  18. android开发视频资源 电驴10G下载
  19. Arduino ESP32 SD卡读写实例
  20. java循环嵌套语句示范_java的三种循环结构与循环嵌套

热门文章

  1. 小程序tabBar无效
  2. 阿里easyExcel学习笔记(maven)
  3. Darklabel多目标跟踪标注工具
  4. 粒子群算法(6)-----几个适应度评价函数
  5. 论文阅读笔记:Sequential Matching Network: A New Architecture for Multi-turn Response Selection in Retrieva
  6. 共享文件计算机和设备拒绝访问,共享文件夹无法访问、设置文件夹访问权限、共享文件夹拒绝访问的解决方法...
  7. 常用通信光纤是如何分类的
  8. html+css制作小米商城官网初尝试
  9. 【转载】深入浅出讲解FOC算法与SVPWM技术——自制FOC驱动器
  10. 实用工具:常用数学公式