Je me demande comment vient le code # numéro1 ne fonctionne pas Comme j'essaye d'utiliser l'opérateur d'incrément pour afficher l'élément suivant de la matrice.
mais le code numéro2 # fonctionne, et c'était le même code mais dans une fonction p>
3 Réponses :
Utilisation: dans le code n ° 1. Ça va marcher. En effet, vous devez d'abord créer un pointeur sur la base de la matrice que vous pouvez incrémenter comme dans le deuxième code, vous avez le pointeur sous la forme de l'argument transmis à la fonction. P> P>
C'est parce que vous ne pouvez pas modifier l'adresse d'un tableau. Dans # Numéro 1 Code Lorsque vous effectuez une array ++, vous essayez de fonctionner directement sur la variable qui stocke l'adresse de base de la matrice. Ce que vous pouvez essayer, c'est quelque chose comme ci-dessous:
int *p = array; p++;
Ceci est un problème courant pour les débutants. for (int x = 0; x < 5; x++) {
std::cout << arrays[x] << '\n';
}
Une valeur de pointeur (l'adresse de pointe) peut être incrémentée. Bien que la matrice se désintègre à un pointeur pour presque tout, il est toujours un tableau et (l'adresse) ne peut pas être incrémenté. Affectation de
Tableaux code> à un pointeur correspondant dansprincipal () code>, cela fonctionnerait aussi. Peut-être d'intérêt: Donc: Les tableaux sont des pointeurs? .