当前位置:  开发笔记 > 编程语言 > 正文

2d数组错误c ++

如何解决《2d数组错误c++》经验,为你挑选了2个好方法。

我正在尝试运行一个c ++ 2d数组(非常简单的文件)并且它可以工作,但最后会出现一个错误(至少我认为这是一个错误).

数组的代码是;

int myArray[10][10];
for (int i = 0; i <= 9; ++i){

    for (int t = 0; t <=9; ++t){

        myArray[i][t] = i+t; //This will give each element a value

    }

}

for (int i = 0; i <= 9; ++i){

    for (int t = 0; t <=9; ++t){

        cout << myArray[i][t] << "\n";

    }

这会正确打印数组,但会添加

"0x22fbb0"

最后.这是什么以及它为什么会发生?



1> Johannes Sch..:

到目前为止,您展示的代码很好.打印的地址似乎不是从代码的那一部分打印出来的.我可以想象两种情况.

您不小心打印myArray [i]或myArray并忘记应用其他索引.当数组值转换为其第一个元素的地址时,它会导致打印一个地址.

你不小心打印cout本身像cout << cout.cout有一个隐式转换为指针类型(它用于检查像是在内的理智状态if(cout) { ... }),这也会导致打印地址.

这可能是另一种情况.你可以粘贴两个循环后出现的代码吗?



2> Jimmy..:

错误不在您发布的代码中.之后你还有另一个cout吗?

0x22 ....看起来像一个内存地址,所以具体来说你可能有一行读取

cout << myArray;

某处.

推荐阅读
小妖694_807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有