User: alciro    User
 Original    Translate to:  Deutsch  English  Français  中文  
 

Programación en C++ Builder

 Arrays (Arrays)
 Zeiger
3. Beispiel Klasse in C + +
8. AnsiString Klasse Methoden
 C + +-Projekte
 Pakete, verteilen eine Anwendung ohne Installation
 Börse sortieren oder Blase
 Zeichenfolgenfunktionen string.h

Zeiger

A-Zeiger oder ein Indikator ist ein Verweis auf ein Objekt eines angegebenen Typs auf indirekte Weise. Im Grunde ein Zeiger enthält die Erinnerung an eine Art Datenposition.

Zeiger ermöglichen arbeiten als Referenz, erstellen und Bearbeiten von dynamische Objekten von Datenstrukturen, Listen, Batterien, Warteschlangen und Bäume.

Erklärung

Zeiger als durch die Verwendung von Zeigern deklariert werden müssen die unitären Operator ' *' (Dereferenzierung). Für seine Aussage zu einer Variablen unterliegt es dieselben Mechanismen auf die Deklaration einer Variablen angewendet. Wie ein Zeiger auf eine Variable Dereferenzierung (zeigt auf die Variable) darstellt, deklarieren Sie den Datentyp der Variablen, auf die verweisen wird.

TipoDato * NombreVariable;

Beispiel der Erklärung von einem Namen Zeiger p, die auf eine Variable vom Typ Int Entero zeigt:

 Int n; / / eine Variable-Anweisung ganz n Int * P; / / Deklaration einer Variablen einen Zeiger p den Integer-Typ

Die Adresse-Operator &

-

Regla:

  • p =... wenn verwendet der Namen des Zeigers ist die Inhaltsdaten, den Wert der Variable Speicheradresse zugegriffen.
  • * p =... mit dem Operator '*' Zugriff auf die Dereferenzierung verwendet, arbeiten Sie mit dem Inhalt der gezielte Erinnerung.

Schritte, um die Arbeit mit Zeigern und keine Fehler machen.

  1. Bestimmte Zeigertyp zu deklarieren (Int * p;).
  2. Den Zeiger zu starten, stellen Sie sicher, sie verweist auf die Variable (p = &...;).
  3. Arbeiten mit dem Mauszeiger (* p =...;).

Beispiel von Zeigern, Kopie-Vektor

 / /-#include <vcl.h> # gehören <iostream.h> # enthalten <conio.h> #pragma Hdrstop / / Funktionen Prototyp void CopiaVector (Int * v1, Int * v2, Int Num); / /-#Pragma Argsused Int main (Int Argc, Char * argv[]) {/ / Variablen Int V [] = {3, 34, 1, 53, 15, 6};}   / / Vector 1 Int x [6];   / / Vektor 2 / / Array mit Zufallszahlen für display (Int n = 0; n < 6; n++) {Cout << x [n] << "";}

CopiaVector (V, x, 4);

/ / Anzeige den Vektor durch Kopieren der ersten 4 Semester Cout << Endl;
für (Int n = 0; n < 6; n++) {Cout << x [n] << "";}

150.150.100;
return 0;
} / /-/ * Funktion Kopie Vektor der ganzzahligen Typ v1 - > Zeiger auf ursprünglichen Vektor v2 - > Zeiger auf Ziel-Num - Vektor > Anzahl der zu kopierenden Elemente * / void CopiaVector (Int * v1, Int * v2, Int Num) {für (Int n = 0; n < Num; n++) {*(v2+n) = *(v1+n);}  {{/ / Die vector1 vector2 Elemente kopieren}}

Beispiel von Zeigern, von einem Vektor aufsteigend

 / / # include <vcl.h> # include <iostream.h> # include <conio.h> # pragma Hdrstop # definiert DIM 6 / / dimension des Arrays / / Funktionen Prototyp publicstaticvoid copiaVector(int_*v1,_int_*v2,_int_num); staticvoid ordenA(int_*v,_int_n); / / # Pragma Argsused Int main(int_argc,_char*_argv[]) {/ / Variable Int V [] = {1, 3, 34, 53, 15, 6};}   / / Vector 1 Int x [DIM];   / / Vector 2 / / display das Array mit Zufallszahlen für (Int_n = 0; _n < 6; _n ++) {Cout << x [n] << "";}

copiaVector(v,_x,_DIM);

/ / Display kopieren Begriffe Cout Vektor << Endl;
für (Int_n = 0; _n < Dim; _n ++) {Cout << x [n] << "";}

ordenA(x,_DIM);

/ / Display das Array sortiert Cout << Endl;
für (Int_n = 0; _n < Dim; _n ++) {Cout << x [n] << "";}

getch();
return 0;
} / /-/ * Funktion Kopie Vektor der ganzzahligen Typ v1 - > Zeiger auf der ursprünglichen Vektor v2 - > Zeiger auf Ziel Num - Vektor > Anzahl der zu kopierenden Elemente * / void copiaVector(int_*v1,_int_*v2,_int_num) {für (Int_n = 0; _n < Num; _n ++) {*(v2+n) = *(v1+n);}}  {{/ / Die vector2 von vector1 in Elemente kopieren}} / * Funktion sortiert Aufsteigend Array nach der Methode der Blase * V - > Zeiger auf der Vector, der Ordnung n - > Anzahl der Elemente in der Vektor * / void ordenA(int_*v,_int_n) {Int j, Aux; Int ich = 0; Bool Ord = False;}

/ / Ordinationen while(!ord) {/ / Vergleiche Ord = True;}
	für (j = 0; j < n-1-i; j++) {Wenn (* (V + j) > * (V + j + 1)) {/ / Exchange Elemente Aux = * (V + j);}}
			* (V + j) = * (V + j + 1);
			* (V + j + 1) = Aux;
			Ord = False;	{{/ / Indikator für sortiert Vektor}} ich ++;
}
}
Loading
copyright © 2007-2024  www.alciro.org  All rights reserved.         
Share |