| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2952 人关注过本帖
标题:请问在C++中二维数组如何给指针赋初值?
只看楼主 加入收藏
wantflying
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-5-16
收藏
 问题点数:0 回复次数:4 
请问在C++中二维数组如何给指针赋初值?

我编了这样一段程序,在C++中老是通不过编译,为什么? #include <stdio.h>

void main() { int a[2][3],*p=a; int i,j; for (i=0;i<2; i++) for (j=0; j<3; j++); scanf("%d",p+i*3+j); for(i=0;i<2;i++) { printf("\n"); for (j=0; j<3;j++) printf("%d", *(p+i*3+j)); } } 错误提示信息: E:\XiaoHu\C\7\7.cpp(5) : error C2440: 'initializing' : cannot convert from 'int [2][3]' to 'int *' Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

搜索更多相关主题的帖子: 指针 
2005-05-17 00:39
tary
Rank: 1
等 级:新手上路
帖 子:780
专家分:0
注 册:2004-10-5
收藏
得分:0 
你这个程序是C还是C++啊?
那个指针指错了, 不能这样指..
一维指针只能指向一维数组..
要指向二维数组的话, 你可以选择指针数组或者是指向指针的指针...

┌→¨ ≮我可以学会对你很冷落≯¨←┐ │  <却学不╓══╦══╖会将爱> │ │¨←┐ ╭╩╮哭‖哭╭╩╮ ┌→¨│ └──┘收 ╲╱ ◇‖◇ ╲╱回└──┘
2005-05-17 08:35
冷酷无情
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2005-5-4
收藏
得分:0 

#include <stdio.h>

void main() { int a[2][3],*p=a; int i,j; for (i=0;i<2; i++) for (j=0; j<3; j++); scanf("%d",p+i*3+j);// 指针有问题,写成这样*(p+i)+j,或者在定义指针时写成int *p=a[0] for(i=0;i<2;i++) { printf("\n"); for (j=0; j<3;j++) printf("%d", *(p+i*3+j)); } } 顺便说一下,以后写程序不要C和C++混着用,这样的习惯不太好,如果是C++程序就遵照标准C++写

[此贴子已经被作者于2005-5-17 12:06:38编辑过]


2005-05-17 12:05
wantflying
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-5-16
收藏
得分:0 
谢谢高人指点!!

抗日-- 从我做起!
2005-05-17 12:27
hu_sir
Rank: 1
等 级:新手上路
帖 子:208
专家分:0
注 册:2004-4-29
收藏
得分:0 
#include &lt;stdio.h&gt;
void main()
{
int a[2][3];
int *p;
p=a[0];                           //原代码中p初始化错误【已修改】
int i,j;
for (i=0;i&lt;2; i++)
for (j=0; j&lt;3; j++)             //原代码中多了一个分号【已修改】
scanf("%d",p+i*3+j);
for(i=0;i&lt;2;i++)
{
  printf("\n");
  for (j=0; j&lt;3;j++)
  printf("%d", *(p+i*3+j));
}
}


//已经通过编译。

[此贴子已经被作者于2005-5-18 11:45:34编辑过]


2005-05-18 11:43
快速回复:请问在C++中二维数组如何给指针赋初值?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025603 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved