Maison développement back-end Tutoriel C#.Net Quelles sont les utilisations des pointeurs de tableau ?

Quelles sont les utilisations des pointeurs de tableau ?

Jun 11, 2020 pm 04:20 PM
数组指针

Quelles sont les utilisations des pointeurs de tableau ?

int *a[4]; //指针数组
Copier après la connexion

Un tableau de pointeurs équivaut à déclarer plusieurs pointeurs à la fois. Chaque élément du tableau est un pointeur. C'est facile à comprendre. Concentrons-nous sur les pointeurs de tableau

int (*p)[4]; //数组指针
Copier après la connexion

Les pointeurs de tableau équivalent à déclarer un pointeur à la fois. C'est juste que ce pointeur pointe vers quelque chose de très spécial, c'est un tableau.

[] a une priorité supérieure à *, donc () doit être ajouté lors de la déclaration du pointeur de tableau.

Exemple 1 :

#include<stdio.h>#include<stdlib.h>void main()
{    //数组指针的用法,用处。
    int b[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};    int (*p)[4]; //该语句是定义一个数组指针,指针步长为4个int即16位。    //int *p2=&b;
    p=&b;    int i=0;    while(i<16)
    {
          printf("%d\t",(*p)[i]);          //printf("%d\t",*p2++);
          i++;
    }
}
Copier après la connexion

printf("%dt",(*p)[i]); parcourir le tableau de sortie b;
le pointeur de tableau est équivalent au dance king Comme un zombie, avec un frère cadet, n est le nombre de frères cadets. Vous pouvez accéder directement au frère cadet spécifique via la valeur d'indice, c'est-à-dire quel numéro dans le tableau

Le. L'indice du pointeur de tableau est incrémenté (i++ ), le pointeur pointe inchangé.

Cela peut être implémenté directement à l'aide de pointeurs entiers, et c'est plus pratique et concis. Voir la section commentée ci-dessus.

Exemple 2 : remplacez l'instruction while() dans l'exemple 1.

  while(i<4)
    {
          printf("%d\t",(*p++)[0]);
          i++;
    }
Copier après la connexion

Exemple 2 génère 1 5 9 13, ce qui équivaut au pointeur déplaçant 4 int.16 octets à la fois.

Lorsque le pointeur de tableau est incrémenté (*p++), le pointeur pointe vers la taille déplacée de (type).

En fait, la phrase ci-dessus s'applique également à d'autres types de pointeurs.

Tel que int *p;

//Le pointeur pointe vers int, qui est un pointeur entier. Quelles sont les caractéristiques des pointeurs entiers ? C'est l'adresse qui permet de sauvegarder la variable entière. A quoi ça sert ? Autrement dit, lorsque p++ est utilisé, il peut pointer vers le numéro de type int suivant. Alors ? Utilisez souvent des pointeurs pour pointer vers un tableau. Parce qu'ils sont tous de type int, la taille du pas est dérivée ? La taille du pas du pointeur entier est sizeof(int), soit 4 octets

//De même, nous pouvons obtenir des pointeurs de type float, des pointeurs de type char, etc. . .

De la même manière, on peut obtenir le pointeur de tableau, quelles sont ses caractéristiques ? Enregistrez la première adresse du tableau. utiliser? Lors de l'utilisation de p++, il peut pointer vers le tableau suivant. Donc? Utilisez-le pour pointer vers un tableau à deux dimensions. Étant donné que chaque élément du tableau bidimensionnel est du même type (tous sont un tableau int), la taille du pas peut-elle être déduite ? sizeof(int[4]), soit 16

//Pour parler franchement, c'est un pointeur pointant vers le type de tableau

Exemple 3 : Le le pointeur de tableau pointe vers un tableau à deux dimensions.

#include<stdio.h>#include<stdlib.h>void main()
{    int a[3][4]={{1,2,3,4},{11,12,13,14},{21,22,23,24}};    int (*p)[4]; //该语句是定义一个数组指针,指针步长为4个int即16位。
    p=&a;    int i=0;    while(i<3)
    {        //printf("%d\t",(*p)[i]);        //数组指针,指向的是一个数组整体,相当于指针也带了下标,当执行i++操作时,下标+1,得到该数组的下一个元素,        //在该例中,指针没有位移,所以依次输出为1 2 3
        printf("%d\t",(*p++)[0]);        //整型数组类型的指针,指向的是一个数组整体,当执行*p++操作时,指针位移该数组长度的位数        //在该例中,即指针位移4个int的长度,所以输出是1 11 21
        i++;
    }
}
Copier après la connexion

Tutoriel recommandé : "Tutoriel vidéo C"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

A quoi servent les pointeurs de tableau php ? A quoi servent les pointeurs de tableau php ? Dec 28, 2022 pm 07:23 PM

Les pointeurs de tableau PHP sont utilisés pour faire fonctionner les tableaux. Le pointeur de tableau est le mécanisme d'organisation interne du tableau. Chaque tableau possède un pointeur interne pointant vers son unité (élément) « actuelle ». Ce pointeur pointe initialement vers la première unité du tableau actuel en déplaçant ou en modifiant la position du pointeur du tableau. , vous pouvez accéder à n’importe quel élément du tableau. PHP fournit plusieurs fonctions intégrées pour contrôler les pointeurs de tableau : current(), pos(), key(), next(), prev(), end(), reset().

Comment déplacer le pointeur de tableau vers l'élément suivant en utilisant la fonction suivante en PHP Comment déplacer le pointeur de tableau vers l'élément suivant en utilisant la fonction suivante en PHP Jun 26, 2023 pm 03:55 PM

PHP est un langage de script côté serveur largement utilisé dans le développement Web. Sa syntaxe est similaire au langage C et fournit également de nombreuses fonctions et bibliothèques pratiques. En PHP, la fonction next() est une fonction couramment utilisée pour déplacer un pointeur de tableau vers l'élément suivant. 1. Qu'est-ce qu'un pointeur de tableau ? En PHP, un tableau est une structure de données très pratique qui peut stocker de nombreuses données ordonnées. Chaque élément du tableau a un indice correspondant, qui peut être utilisé pour accéder et modifier la valeur de l'élément. En plus d'accéder aux éléments du tableau via des indices,

Compétences en matière d'application de tableau de pointeurs de fonction Golang et de pointeurs de tableau Compétences en matière d'application de tableau de pointeurs de fonction Golang et de pointeurs de tableau May 16, 2023 pm 04:00 PM

Avec le développement continu du langage Golang, les tableaux de pointeurs de fonctions et les pointeurs de tableau sont également devenus une partie importante de la programmation Golang. Dans cet article, nous discuterons des compétences d'application des tableaux de pointeurs et des pointeurs de tableau dans les fonctions Golang, et vous fournirons des exemples de codes pratiques et des explications associées. Concepts de base du tableau de pointeurs Golang Tout d'abord, comprenons d'abord le tableau de pointeurs Golang. Un tableau de pointeurs est un type de données qui est un tableau de pointeurs vers différentes variables ou objets.

Quelle est la différence entre un pointeur de tableau et un tableau de pointeurs Quelle est la différence entre un pointeur de tableau et un tableau de pointeurs Sep 22, 2023 am 09:51 AM

Les différences entre les pointeurs de tableau et les tableaux de pointeurs sont : 1. Le pointeur de tableau est un pointeur, tandis que le tableau de pointeurs stocké est un tableau ; 2. Le pointeur de tableau est déclaré int *p = arr;, tandis que le tableau de pointeurs est déclaré int * arr[ 5];; 3. Le pointeur de tableau peut accéder aux éléments du tableau sous la forme de p[i], tandis que le tableau de pointeurs doit accéder aux éléments du tableau sous la forme de arr[i].

Quelle est la différence entre un tableau de pointeurs et un pointeur de tableau Quelle est la différence entre un tableau de pointeurs et un pointeur de tableau Jan 06, 2023 pm 04:50 PM

Différence : pour un tableau de pointeurs, c'est d'abord un tableau, et les éléments du tableau sont tous des pointeurs, ce qui signifie que le tableau stocke les pointeurs. Le nombre d'octets occupés par le tableau est déterminé par le tableau lui-même ; pour un pointeur de tableau, tout d'abord c'est un pointeur, il pointe vers un tableau, c'est-à-dire que c'est un pointeur vers le tableau, qui occupe toujours 4 octets dans un système 32 bits. tableau vers lequel il pointe occupe, cela ne peut pas être déterminé et cela dépend de la situation spécifique.

Comment utiliser la fonction de réinitialisation en PHP pour déplacer le pointeur du tableau au début du tableau Comment utiliser la fonction de réinitialisation en PHP pour déplacer le pointeur du tableau au début du tableau Jun 26, 2023 pm 12:45 PM

En PHP, vous pouvez utiliser la fonction reset pour déplacer le pointeur du tableau vers le début du tableau. Avant d'utiliser la fonction de réinitialisation, vous devez connaître le concept des pointeurs de tableau. Le pointeur de tableau est un pointeur interne qui pointe vers l'élément de tableau en cours d'exécution. En PHP, vous pouvez utiliser une boucle foreach pour parcourir un tableau, ou vous pouvez utiliser une boucle while et un pointeur de tableau pour parcourir un tableau. Cependant, lorsque vous utilisez une boucle while et un pointeur de tableau pour parcourir un tableau, vous devez utiliser la fonction de réinitialisation pour ramener le pointeur de tableau au début du tableau. Utiliser la réinitialisation

Quelle est la différence entre un tableau de pointeurs et un pointeur de tableau Quelle est la différence entre un tableau de pointeurs et un pointeur de tableau Sep 04, 2023 pm 03:45 PM

Le tableau de pointeurs et le pointeur de tableau sont deux types de concepts différents, qui sont différents dans la définition et l'utilisation : 1. Le tableau de pointeurs est un tableau dont chaque élément est un type de pointeur, tandis que le pointeur de tableau est un pointeur qui pointe vers un Le premier adresse du tableau ; 2. La méthode de déclaration du tableau de pointeurs est "type *array[]", et la méthode de déclaration du pointeur de tableau est "type (*ptr)[size]".

Quelle est la différence entre un pointeur de tableau et une référence de tableau ? Quelle est la différence entre un pointeur de tableau et une référence de tableau ? Jun 04, 2024 am 10:01 AM

Il existe les différences suivantes entre le pointeur de tableau et la référence de tableau : Déréférencement requis : le pointeur de tableau doit être déréférencé, contrairement à la référence de tableau. Arithmétique du pointeur : les pointeurs de tableau prennent en charge l'arithmétique des pointeurs, contrairement aux références de tableau. Adresse : le pointeur de tableau stocke l'adresse du premier élément du tableau, mais la référence du tableau n'est pas une adresse. Constant kval : les pointeurs de tableau peuvent pointer vers constkval, mais pas les références de tableau. Taille du tableau : les pointeurs de tableau ne stockent pas la taille du tableau, tandis que les références de tableau contiennent implicitement la taille du tableau.

See all articles