Nein. Sie sind Zeiger, deren Größe systemabhängig ist und deren einziger kompatibler Typ void*
ist.
Zeiger sind vom Zeigertyp. Wenn Sie sich fragen, wie Zeigerwerte im Speicher dargestellt werden, hängt das wirklich von der Plattform ab. Sie können einfache Integralwerte sein (wie in einem flachen Speichermodell), oder sie können strukturierte Werte wie eine Seitennummer und ein Offset (für ein segmentiertes Modell) sein, oder sie können etwas ganz anderes sein.
In C kann der Zeiger auf die Variablen beliebiger Datentypen zugreifen. Der Zeiger sollte mit dem Datentyp der Variablen deklariert werden, auf die der Zeiger zeigen soll. Um die Adresse des Zeigers im hexadezimalen Format zu drucken, verwenden Sie %p
und um die Adresse in anderen Formularen zu drucken, verwenden Sie %u
. Wenn der Zeiger zur Anzeige des Werts der Zeigevariablen verwendet werden soll, verwenden Sie *pointer_name
und nur für Adresse Verwende pointer_name
.
int * p;
Datentyp von * p ist ein Zeiger. Und es zeigt auf Integer-Typ-Variable. Es speichert Adresse im hexadezimalen Format.
Was ist der Datentyp des Zeigers in C? ist die einzigartige Frage.
Man sollte nicht von der Frage abweichen, um irgendwelche Hinweise auf Zeiger als Antwort auf die Frage zu geben?
Antwort.
Wie lautet der Datentypname einer Menge von Intergern in C? Der Name ist int, was der Name der Menge aller zulässigen ganzen Zahlen ist. Daher deklarieren wir int x; wobei x einen beliebigen Wert aus der Menge annehmen kann.
Ähnlich, Was ist der Name der Menge aller zulässigen Adressen oder Zeiger? Der Satzname kann nur das Zeichen '*' sein, wie ich es erfahre, obwohl nirgendwo in den C-Spracherzählungen eine Erklärung zu finden ist.
Daher deklarieren wir die Zeigervariable als * x; Wobei * der Datentypname ist. Ansonsten sollte ein Zeiger-Datentyp betrachtet und unter den benutzerdefinierten Datentyp gebracht werden. Da es alle RAM-Zellen gibt, bildet der Datentyp '*' eine Teilmenge zulässiger und akzelerabler Speicherzellen. Daher ist dies ein Datentyp-Name eines Satzes von Zeigern.
Der int ist der Modifikator wie in signed char c; wo signed ist der Modifikator in C. Wir haben vielleicht int * x; zu meinen, dass Daten in der Position eine ganze Zahl sind, die eine notwendige Information für den Compiler ist.
C spricht über den Zeigerdatentyp als Benutzerdatentyp. Vielleicht ist es falsch, den Zeigerdatentyp als den Benutzerdatentyp zu betrachten, da der Benutzer keine Kontrolle über den Satz von Zeigern in dem Satz hat, wobei das Grundkonzept von int der Satzname, float der Satzname, char ist der Satzname von haracters, double ist der Set-Name von floats mit hochpräzisen Zahlen, color ist der Datentyp name in enum color = {blau, rot, gelb).