Heim  >  Artikel  >  Backend-Entwicklung  >  Wozu dient const?

Wozu dient const?

coldplay.xixi
coldplay.xixiOriginal
2020-06-20 11:38:584276Durchsuche

Wozu dient const?

Was ist die Verwendung von const?

Die Verwendung von const ist:

1. Die übliche Verwendung von const

int const size;
const int size;

Diese beiden Anweisungen sind Deklarieren Sie die Größe als Ganzzahl und ihr Wert kann nicht geändert werden.

Sie können es bei der Deklaration initialisieren

int const size =10;

Falsche Verwendung:

const int size =10;
char buffer[size];  

Der Fehler besteht darin, dass die Größe einen bestimmten Speicherblock belegt, und der C-Compiler weiß das nicht es ist Wertschöpfung. Darüber hinaus ist in C standardmäßig const für die externe Verbindung vorgesehen, sodass es in Ordnung ist, es als const zu schreiben.

2.const wird für Zeiger verwendet

(1)

const int *p;
int const *p;         //含义是指向常量的指针,指针的常量值不可以修改

Die beiden sind gleich, p ist ein Zeiger auf die ganze Zahl immer aktiv und kann geändert werden Der Wert eines Zeigers, aber der Wert, auf den der Zeiger zeigt, kann nicht geändert werden.

int b = 5;
int c = 3;
const int *p=&b;
*p=6;    //错误,不能通过指针修改所指向的值;
p=&c;    //正确,可以修改指针的值 

(2)

int * const p;   //含义是常量指针,p的值不可以修改

p ist ein Zeiger und Zeiger p ist eine Konstante. Sein Wert kann nicht geändert werden, aber der Wert der Ganzzahl, auf die p zeigt.

int b = 5;
int c = 3;
int *const p = &b;
*p = 6;  //正确,可以修改指针所值向的值
p =&c;   //错误,不可以修改指针的值 

(3)

const int * const p;

Sowohl der Zeiger selbst als auch der Wert, auf den er zeigt, sind Konstanten.

Einfache Beurteilungsmethode:

Wenn sich const auf der linken Seite von * befindet, wird const verwendet, um die Variable zu ändern, auf die der Zeiger zeigt, dh der Zeiger zeigt auf eine Bitkonstante.

Wenn sich const auf der rechten Seite von * befindet, ändert const den Zeiger selbst, dh der Zeiger selbst ist eine Konstante.

3. const wird für die formalen Parameter der Funktion verwendet

void foo(const int * p)

Wenn const für die formalen Parameter verwendet wird, bedeutet dies Folgendes Die formalen Parameter werden innerhalb der Funktion nicht verwendet. Dieses Formular wird normalerweise verwendet, um Call-by-Value in Parametern im Array-Format zu simulieren. Dies ist auch das Nützlichste an const: Es begrenzt die formalen Parameter einer Funktion, sodass die Funktion die Daten, auf die der tatsächliche Parameterzeiger zeigt, nicht ändert. Hierbei ist zu beachten, dass die Funktion nicht geändert werden sollte und nicht, dass sie nicht geändert werden kann.

4. Andere Möglichkeiten, Konstanten zu deklarieren

In der Sprache C können Sie den Enum-Typ und das #define-Makro verwenden, um Konstanten zu definieren

#define MAX_SIZE 10;
int const max_size =10;

Verwenden Sie # Hier ist die Definition besser als die Verwendung von const-Variablen.

Ersteres kann überall dort verwendet werden, wo Literalkonstanten zulässig sind, beispielsweise zum Deklarieren der Länge eines Arrays.

Const-Variablen können nur dort verwendet werden, wo Variablen zulässig sind.

Empfohlenes Tutorial: „C-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWozu dient const?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn