Caractères dupliqués dans un tableau multidimensionnel


aaaeka

J'ai créé un chartableau multidimensionnel vide , mais lorsque j'essaie de modifier une valeur spécifique, il se duplique parfois dans un autre espace du tableau.

Exemple:

#include <iostream>
using namespace std;

char arr[2][2] = { 0 };

int main ()
{
    arr[2][0] = 'A';
    for(int i = 0; i < 3; ++i)
    {
        for(int j = 0; j < 3; ++j)
        {
            cout << "arr[" << i << "][" << j << "] = " << arr[i][j] << endl;
        }
    }
}

Production:

arr[0][0] =
arr[0][1] =
arr[0][2] =
arr[1][0] =
arr[1][1] =
arr[1][2] = A
arr[2][0] = A
arr[2][1] =
arr[2][2] =

Le caractère Ane doit apparaître que dans [2][0]mais il apparaît également dans [1][2]. Cela se produit uniquement dans ces espaces:

[1][0], [2][0], [0][2], [2][2]

J'ai pu recréer cela avec un plus grand tableau, mais je ne peux pas dire les valeurs spécifiques.

J'ai essayé de définir à l'intérieur de la main()fonction mais cela a créé un autre problème, des caractères aléatoires ont commencé à apparaître à des emplacements aléatoires du tableau.

J'ai essayé d'initialiser le tableau avec char arr[2][2] = { 0 }, mais cela n'a pas aidé.

Pourrait

Lorsque vous déclarez char arr[2][2] = { 0 };, c'est un tableau 2x2. Ce qui signifie que ses indices vont de 0 à 1. Vous écrivez dans l'index 2, qui est en dehors des limites du tableau.

Articles connexes


Clés inconnues dans un tableau multidimensionnel

ÂgeDeO J'utilise le code suivant pour récupérer la première clé dans le premier élément du premier élément du premier élément du premier élément du premier élément d'un tableau $value = key(reset(reset(reset(reset(($array)))))) Y a-t-il une plus belle façon de

Indexation dans un tableau multidimensionnel

Nicolas Tomlin Dans Julia, est-il possible d'indexer dans un tableau avec un autre? Je cherche quelque chose comme ça: a = Array{Int8}(undef, 3, 3, 3) b = [1,2,3] a[b] = 12 Mais jusqu'à présent, la seule solution que je puisse trouver est a[b[1], b[2], b[3]]