Multidimensionals Arrays间接交互

时间:2015-06-01 04:20:57

标签: arrays

我已经解决了这个问题,我不明白为什么cout<<数组[0] [8]写入2而不是1。

http://gyazo.com/d159d3ea97b07f1551605daacd631703

#include <iostream>
using namespace std;

int main()
{
    int Array[8][8];

    Array[0][8] = 1;
    Array[1][0] = 2;

    cout << Array[0][8] << endl;
    system("pause");
    return(0);
}

2 个答案:

答案 0 :(得分:1)

我认为阵列分配了这种类型:

通过使用下标(即,数组的行索引和列索引)来访问二维数组中的元素。例如:

type arrayName [ x ][ y ];

其中type可以是任何有效的C ++数据类型,arrayName将是有效的C ++标识符。

二维数组可以被认为是一个表,它将包含x个行和y个列。包含三行四列的二维数组a如下所示:

enter image description here

因此,数组a中的每个元素都由a [i] [j]形式的元素名称标识,其中a是数组的名称,i和j是唯一标识a中每个元素的下标。

 int val = a[2][3];

答案 1 :(得分:0)

数组索引数组[0] [8]不在int数组的范围内[8] [8]

如果您将此行留下如下所示,它仍然会打印2.也许它会获得一些垃圾值。

    <html>
    <head>
    <script>
    function changeBackground()
    {var z = new Image(); 
    z.src = "<?=$varImage;?>"; 
    document.body.background= z.src; }
    </script>
    <?php
    if($errorMessage != "") 
    {
      echo("<p>There was an error:</p>\n");
      echo("<ul>" . $errorMessage . "</ul>\n");
    } 
    else
    {
      $fs = fopen("mydata.csv","w+");
      fwrite($fs,$varImage . ", \n");
      fclose($fs);

      header("Location: thankyou.html");
      exit;
    }
    ?>
    <?php
      if($_POST['formSubmit'] == "Submit") 
      {
        $varImage = $_POST['formImage'];
      }
    ?>

    </head>
    <body>
    <script src="images.js" type="text/javascript"></script>
    <form name="alternate" method="POST" action="">
       <input type="button" name="Change" value="Change"                                                             onClick="changeBackground();">
    </form>
    </body>
    </html>