2 qq 34650359 qq_34650359 于 2016.04.13 20:00 提问

指针和二维数组的用法

int *s
for(i=0;i<5;i++)
for(j=0;j<5;j++)
cout<<s[i][j];//error想请教各位程序员哥哥这个要怎么改啊?

8个回答

yutianxin123
yutianxin123   2016.04.13 20:50
已采纳

楼上的就行了,int (*s)[5][5] 也可以吧。

qq423399099
qq423399099 int *s[5]这种指针数组也可以的,只不过可读性都不是太好
2 年多之前 回复
lenovo20142018
lenovo20142018   2016.04.13 21:27

虽然是二维的数组,其实指针的指的是第一行第一列,所以*s[i]就成了一个一维数组的指针,在c++里面你还可以试试引用,同时理解指针。

zhaoxin19890523
zhaoxin19890523   2016.04.14 22:13

首先,s在此处定义为一维,二维引用会导致错误。其次,对于s,没有指定指向的对象,也没有分配相应的空间。

CSDNXIAOD
CSDNXIAOD   2016.04.13 20:12

二维数组指针
二维数组和指针
二维数组指针
----------------------biu~biu~biu~~~在下问答机器人小D,这是我依靠自己的聪明才智给出的答案,如果不正确,你来咬我啊!

qq423399099
qq423399099   Ds   Rxr 2016.04.13 20:19

你这个s是个一维的指针
改成:int **s; 或 int s[5][5];

vcvt1995
vcvt1995   2016.04.13 23:37

动态二维数组,int **s = new int[5][5];

Trent1985
Trent1985   2016.04.14 12:40

动态二维数组,int **s = new int[5][5];这个没问题

VisualEleven
VisualEleven   Ds   Rxr 2016.04.14 16:47

直接 int s[5][5];吧

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
二维数组与指针详解
详细讲述了二维数组与指针之间的联系,对于学习C语言,理解指针数组吗,数组指针,数组与指针之间的关系有重要的帮助。仔细学习完该文档,详细你不会再为指针和数据而困惑。
二维数组及多维数组的指针总结
数组指针和指针数组的问题
二维数组与指针、指针数组、数组指针的用法
二维数组和指针⑴ 用指针表示二维数组元素。要用指针处理二维数组,首先要解决从存储的角度对二维数组的认识问题。我们知道,一个二维数组在计算机中存储时,是按照先行后列的顺序依次存储的,当把每一行看作一个整体,即视为一个大的数组元素时,这个存储的二维数组也就变成了一个一维数组了。而每个大数组元素对应二维数组的一行,我们就称之为行数组元素,显然每个行数组元素都是一个一维数组下面我们讨论指针和二维数组元素的...
动态生成二维数组的做法
动态生成二维数组的做法,注意其中指针的用法,简单易明
关于用指针方式访问二维数组的问题
关于用指针方式访问二维数组的问题首先,以二维数组a[2][3]为例,a是由数组a[0]、a[1]组成的一维数组,因此,数组名a可以看作是a[0]、a[1]的首地址,即a==&a[0]。 然后,对于二维数组,在这里引入两个概念: 1、一级指针:带一个下标的数组名是一级指针,偏移量是一个元素的长度,它所指对象是数组元素。 2、二级指针:不带下标的数组名是一个逻辑上的二级指针,所指对象是行向量,偏移量是一
采用new运算符创建一个指向二维数组的指针的两种方式
C++中引入了new运算符,用于动态地申请空间。现简单解析其用法。 一、创建单个元素 (1) char * p = new char;     这种方式申明了一个指向一个字符空间的指针变量;然而,这个字符空间中存储什么内容这条语句并没有给出,即没有给这个字符空间初始化。        (2)char * p = new char();    这种方式先申明了一个指向一个字符空间的指针变量
二维指针和二维数组的区别
1、定义指向数组的指针,需要指定数组的列 char arr[][3]或char (*arr)[3];//二维数组本质上是一维数组 *p[3]指针数组;数组的每一个元素都是指针 **p二维指针;指向指针的指针 2、int arr1[3]; int arr2[3]; int arr3[3]; int * ptr; // ptr1是一个指向 int [3] 的指针,
实例分析用指针访问二维数组的几种方法
之前对数组的概念一直没有理解透彻,只觉得数组名就是个常量指针而已,用法和基本的指针差不多。所以当我尝试用二级指针去访问二维数组时,就经常会出错。下面就是刚开始写的一个错误的程序: #include int main() {     int iArray[2][3] =        {{1,2,3},{4,5,6}};     int **pArray =
C语言-- 二维数组变量指针取值的写法
#include //二维数组 指针取值的三种写法 int main(int argc, const char *argv[]) { //声明一个二维数组并赋值 int a[3][4] = {{0,1,2,3}, {4,5,6,7}, {8,9,10,11}}; //1.a+1二维数组指针变量a向前移动一个单位,移动到二维数组的第二个元素{4,5,6,7}
复习指针数组以及如何把二维数组赋值给二维指针
#include #include using namespace std; struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; void listadd(){ int flag = 0; ListNode* pre = new ListNode(0); List