做力扣时,发现go语言对二维数组的操作和我想得有些出入,只好记录一下。

一、初始化一个二维数组

这种写法是可以的:

res:=[2][2]int{}

以下这种写法会报错:

m:=2
n:=2
res:=[m][n]int{}

所以要像以下方法这么定义:

m:=2
n:=2
res:=make([][]int,m)
for i:=range res{res[i]=make([]int,n)
}

唔,我甚至有点怀念c++。

二、给定一个二维数组,判断长和宽

假设给定res数组是3*4的,如何用程序判断出长和宽呢?

res := [3][4]int{{1,2,3,4},{1,2,3,4},{1,2,3,4}}
fmt.Println(len(res))   //这是打印第一个维度,本例子为3
fmt.Println(len(res[i]))  //这是选取某一行,并打印长度,i不越界即可,每一行的长度都等于数组长度

go语言学习之二维数组相关推荐

  1. c语言字符串二维数组的动态分配应,C语言中动态分配二维数组复习过程.doc

    C语言中动态分配二维数组复习过程.doc C语言中动态分配二维数组在C中动态分配内存的,对于单个变量,字符串,一维数组等,都是很容易的.C中动态分配二维数组的方法,很少有C语言书中描述,我查找了有的C ...

  2. 二维数组在c语言中的作用,C语言中的二维数组

    1.二维数组的定义和引用 一. 数据类型 数组名[常量表达式1][常量表达式2]; (1)假如有个二维数组array[n][m],则行下标的取值范围0~n-1 (2)列下标的取值范围0~m-1 (3) ...

  3. c语言动态生成二维数组,C语言 动态创建二维数组

    /*C语言 如何动态创建二维数组 转化为一维数组申请数组,创建和释放都比较简单 */ #include #include #include #define RANK 10 #define COLUMN ...

  4. C语言4种二维数组三角题

    C语言4种二维数组三角题 此处都以将此三角形的元素乘以n为例 int i,j; for(i=0;i<N;i++) //行编译总是不变 for(j=0;*j<=i*;j++)a[i][j]= ...

  5. C语言指针和二维数组

    二维数组在概念上是二维的,有行和列,但在内存中所有的数组元素都是连续排列的,它们之间没有"缝隙".以下面的二维数组 a 为例: int a[3][4] = { {0, 1, 2, ...

  6. 【C++基础学习】二维数组的动态分配及参数传递

    1. C语言动态分配二维数组 (1)已知第二维 char (*a)[N];//指向数组的指针a = (char (*)[N])malloc(sizeof(char *) * m); printf(&q ...

  7. (c语言)编程输出二维数组中元素的最大值,要求用指针实现。

    (c语言)编程输出二维数组中元素的最大值,要求用指针实现. #include<stdio.h> #include<stdlib.h> #define N 6 //行数 #def ...

  8. c语言二维数组对角线输出字符,用C编程一个4*4的矩阵,用二维数组,求对角线元素的和。,c语言如何使二维数组 输出为矩阵的形式...

    导航:网站首页 > 用C编程一个4*4的矩阵,用二维数组,求对角线元素的和.,c语言如何使二维数组 输出为矩阵的形式 用C编程一个4*4的矩阵,用二维数组,求对角线元素的和.,c语言如何使二维数 ...

  9. c语言字符二维数组传参,C语言函数传递二维数组

    C语言如果给函数传递二维数组作为参数 问题的产生 先看一个传递二维数组的例子: #include void foo(int a[][], int m, int n) { int i = 1; int ...

最新文章

  1. JSP笔记-文件上传
  2. 三星GT-I9308 Galaxy SIII 移动定制机 root方法 (亲测可用)
  3. nodejs中使用RabbitMq消息中心系统的方式
  4. 谷歌为何能持续创新?工程经理亲自揭秘“工程师文化”
  5. swap 将硬盘变内存
  6. 编程方法学11:Gimage
  7. 基于SSM+JBPM的智能化OA办公平台
  8. MongoDB 字段拼接 $concat(aggregation)
  9. maven 部署及使用
  10. 【基础教程】禁忌搜索算法【005期】
  11. MongoDB Compass简易教程
  12. 龙贝格积分——matlab实现
  13. 三星s窗口共享android,使用 S 窗口共享轻松让您的三星手机连接电脑
  14. 百度网盘怎么用迅雷下载
  15. 关于CAN总线的布线
  16. nero如何刻录光盘
  17. 项目集管理PgMP:聚焦战略、收益与治理︱项目管理者联盟联合创始人宣晓锋
  18. Windows Update启动不了如何解决?教你快速修复
  19. 电脑浏览android,直接在电脑上浏览操作安卓手机
  20. Android Studio 支持安卓手机投屏

热门文章

  1. mysql修改表名几种方式_Oracle数据库中修改表名的几种方式
  2. flutterWeb 请求跨域问题解决方案
  3. 为什么要动态分配内存?什么时候需要动态分配内存?
  4. 指南针,城市生活新向导
  5. MAC软件打开提示:已损坏,打不开 您应该将它移到废纸娄的解决方法
  6. 新网域名查询和注册API接口类
  7. shell编程学习心得
  8. 如何在Chrome浏览器中关闭cookie
  9. 百度小程序服务器,百度小程序
  10. C语言基础入门学习--学习笔记