Präfixoperatoren: Unterschied zwischen den Versionen
KKeine Bearbeitungszusammenfassung |
|||
| Zeile 96: | Zeile 96: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Dieses Beispiel zeigt die Verwendung der verschiedenen Präfixoperatoren und wie sie in einem einfachen Programm verwendet werden können. | Dieses Beispiel zeigt die Verwendung der verschiedenen Präfixoperatoren und wie sie in einem einfachen Programm verwendet werden können. | ||
----- | |||
{| style="width: 100%; | |||
| style="width: 33%;" | [[Präprozessor-Direktiven|< Zurück (Präprozessor-Direktiven)]] | |||
| style="width: 33%; text-align:center;" | [[Hauptseite|< Hauptseite >]] | |||
| style="width: 33%; text-align:right;" | [[Infix-Operatoren|Weiter (Infix-Operatoren) >]] | |||
|} | |||
Aktuelle Version vom 24. September 2024, 07:49 Uhr
Präfixoperatoren sind Operatoren, die vor ihren Operanden stehen und verschiedene Arten von Operationen durchführen können. In der C-Programmierung, und somit auch im Kontext des GNU C Compilers (GCC), gibt es mehrere Präfixoperatoren, die eine wichtige Rolle spielen. Hier sind einige der wichtigsten Präfixoperatoren, die in C verwendet werden:
Inkrement (++) und Dekrement (--)
Inkrement (++): Erhöht den Wert einer Variablen um 1.
int a = 5;
++a; // a ist jetzt 6
Dekrement (--): Verringert den Wert einer Variablen um 1.
int b = 5;
--b; // b ist jetzt 4
Dereferenzierungsoperator (*)
Dereferenzierungsoperator (*): Wird verwendet, um auf den Wert zuzugreifen, auf den ein Zeiger zeigt.
int x = 10;
int *ptr = &x;
int y = *ptr; // y ist jetzt 10
Adressoperator (&)
Adressoperator (&): Gibt die Adresse einer Variablen zurück.
int z = 20;
int *ptr = &z; // ptr enthält die Adresse von z
Logisches Nicht (!)
Logisches Nicht (!): Negiert einen logischen Wert. Wenn der Operand wahr ist, wird er falsch und umgekehrt.
int flag = 0;
if (!flag) {
// Dieser Block wird ausgeführt, da !0 wahr ist
}
Bitweises Nicht (~)
Bitweises Nicht (~): Invertiert alle Bits eines Wertes.
unsigned int num = 0b1010; // Binär: 1010
unsigned int result = ~num; // Binär: 0101 (in 4-Bit-Darstellung)
Vorzeichenwechsel (-)
Vorzeichenwechsel (-): Ändert das Vorzeichen eines Wertes.
int positive = 5;
int negative = -positive; // negative ist jetzt -5
Größe des Operators (sizeof)
Größe des Operators (sizeof): Gibt die Größe eines Datentyps oder einer Variable in Bytes zurück.
int a = 5;
size_t size = sizeof(a); // size ist die Anzahl der Bytes, die ein int belegt
Beispiel für die Verwendung von Präfixoperatoren
Hier ist ein einfaches Beispiel, das verschiedene Präfixoperatoren kombiniert:
#include <stdio.h>
int main() {
int a = 5;
int b = 10;
int *ptr = &a;
// Inkrement und Dekrement
++a; // a ist jetzt 6
--b; // b ist jetzt 9
// Dereferenzierungs- und Adressoperator
int c = *ptr; // c ist jetzt 6 (Wert von a)
int *ptr_b = &b;
// Logisches Nicht
int flag = 0;
if (!flag) {
printf("Flag ist falsch\n");
}
// Bitweises Nicht
unsigned int num = 0b1010;
unsigned int result = ~num;
// Vorzeichenwechsel
int positive = 5;
int negative = -positive;
// Größe des Operators
size_t size_of_int = sizeof(int);
// Ausgabe der Ergebnisse
printf("a: %d, b: %d, c: %d\n", a, b, c);
printf("result (bitweises Nicht): %u\n", result);
printf("negative: %d\n", negative);
printf("Größe eines int: %zu Bytes\n", size_of_int);
return 0;
}
Dieses Beispiel zeigt die Verwendung der verschiedenen Präfixoperatoren und wie sie in einem einfachen Programm verwendet werden können.
| < Zurück (Präprozessor-Direktiven) | < Hauptseite > | Weiter (Infix-Operatoren) > |