C++多维数组问题
#include<iostream>usingnamespacestd;intmain(){intp[5][6],i;for(i=1;i<6;i++){p[i][0]=0...
#include<iostream>
using namespace std;
int main(){
int p[5][6],i;
for(i=1;i<6;i++)
{ p[i][0]=0;
p[i][i+1]=0;
}
p[1][1]=1;
return 0;}
运行后提示 停止工作..
我这样给这个二维数组的元素赋值不行吗?
求解 展开
using namespace std;
int main(){
int p[5][6],i;
for(i=1;i<6;i++)
{ p[i][0]=0;
p[i][i+1]=0;
}
p[1][1]=1;
return 0;}
运行后提示 停止工作..
我这样给这个二维数组的元素赋值不行吗?
求解 展开
1个回答
展开全部
#include<iostream>
using namespace std;
int main(){
int p[5][6],i;
for(i=0;i<5;i++)//数纤搭配组下标毁指枝顷从零开始
{
p[i][0]=0;
p[i][i+1]=0;
}
p[1][1]=1;
return 0;
}
using namespace std;
int main(){
int p[5][6],i;
for(i=0;i<5;i++)//数纤搭配组下标毁指枝顷从零开始
{
p[i][0]=0;
p[i][i+1]=0;
}
p[1][1]=1;
return 0;
}
追问
为啥一定要从0开始呢。。我只是挑其中的一部分赋值啊。。
追答
因为从零开始导致你计算下标上限 多1 ,导致数组访问越界
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询