Grundlegende Datentypen in C
- 24-07-2022
- Toanngo92
- 0 Comments
Im vorherigen Artikel haben wir gelernt, wie Variablen Werte in Computern speichern, und die Syntax zum Deklarieren von Variablen. In diesem Artikel werden wir Datentypen in der Sprache C erörtern und uns an das Wissen von erinnern. In der vorherigen Lektion verstehen wir das beim Deklarieren von Daten Typ für eine zu speichernde Variable, weist uns der Computer automatisch einen Speicherplatz ( Speicheradresse ) mit einer bestimmten Größe ( Speichergröße ) zu, die gerade ausreicht, um den gewünschten Datentyp zu speichern. Und da die Programmiersprache C eine strenge Syntax erfordert, können Sie einen Wert dieses Datentyps nicht einer Variablen eines anderen Datentyps zuweisen, sobald Sie einen beliebigen Datentyp für die Variable deklariert haben, können Sie nur einen Wert dieses Datentyps für die zuweisen Variable.
Mục lục
Schlüsselwörter (Schlüsselwörter) in der Variablendeklaration C
Wenn Sie das Konzept der Schlüsselwörter nicht verstehen, können Sie den Artikel C-Programmstruktur, Liste der Schlüsselwörter (Schlüsselwörter) in C-Sprache erneut lesen, um das Konzept erneut zu verstehen. Hier sprechen wir über die Schlüsselwörter, um den Datentyp der Variablen bei der Deklaration der Variablen zu bestimmen. Bei der Deklaration einer Variablen ist darauf zu achten, dass der Variablenname nicht das gleiche Schlüsselwort haben darf (der Variablenname darf Schlüsselwörter enthalten, aber nicht identisch sein, z.B.:
int int; // lỗi int intNum; // không lỗi
Liste der grundlegenden Datentypen in C
Übliche Datentypen, die in Variablen gespeichert werden, umfassen:
- Numerische Daten
- Ganze Zahl. Beispiel (6 oder -5)
- Reelle Zahl. Beispiel (5.20 oder 7.234)
- Positive Zahlen
- Negative Zahlen
- Textdaten (z. B. "abcde", "Ich versuche")
- Logische Daten (wahr/falsch)
Wenn Daten in Variablen unterschiedlicher Datentypen gespeichert werden, benötigen sie unterschiedlich viel Speicherplatz. Die einer Variablen zugewiesene Speichermenge hängt vom Datentyp der Variablen ab (ähnlich wie bei anderen Programmiersprachen). Syntax in C bei Verwendung von Datentypen:
data_type variable_name //kiểudữliệu tên_biến data_type function_name(){ // do something here // kiểudữliệu tên_hàm }
In der Sprache C gibt es 5 grundlegende Datentypen:
int – ganzzahliger Datentyp, der verwendet wird, um ganze Zahlen in freier Wildbahn (abgekürzt inger ) darzustellen, belegt 2 Byte Speicher. (Beispiel 5 oder 100 oder 10000)
Float, Double – reeller Zahlendatentyp, der Dezimalzahlen wie in der Mathematik darstellt, der Float-Typ belegt 4 Bytes und kann 6 Zahlen nach dem Dezimaltrennzeichen darstellen (z. B. 5,999999), und der Double- Typ nimmt 8 Bytes Speicherbereich ein, was 10 Ziffern nach dem Dezimaltrennzeichen darstellt
char – Zeichendatentyp, belegt 1 Byte Speicher, der einzelne Zeichen darstellt ( 'A', 'a', 'B', '1', '2' …). Beachten Sie, dass sich das Zeichen „1“ von der Ganzzahl 1 unterscheidet
void – Datentyp, der für die Funktionsdeklaration verwendet wird (nicht für die Variablendeklaration verwendet), wird verwendet, um eine Funktion zu deklarieren, die keinen Wert zurückgibt. Wird im Funktionsbegriff erwähnt.
Abgeleiteter Datentyp
Ein Modifikator , der verwendet wird, um mit grundlegenden numerischen Datentypen kombiniert zu werden, um verschiedenen Situationen gerecht zu werden (Speichergröße zu reduzieren, Speichergröße zu erhöhen, Variablendarstellung zu erhöhen), das Programm optimierter zu machen, Systemspeicher zu sparen oder Zahlen darzustellen, die größer sind als die normalen Datentypvariablen vertreten. (Wird im Beispiel unten erwähnt)
sign – Datentyp mit Vorzeichen
unsigned – Datentyp ohne Vorzeichen
long – weist die doppelte Speichergröße des Datentyps zu
short – weist die Hälfte der Speichergröße des Datentyps zu
Deklarationssyntax:
sign int a; // khai báo biến integer a có dấu unsign int b; // khai báo biến interer b không dấu short float c; // khai báo biến float nhưng cấp phát 1 nửa kích thước vùng nhớ => 2 bytes unsign long double d; // khai báo biến double nhưng cấp phát gấp đôi kích thước vùng nhớ => 16 bytes và biểu diễn số thực không dấu
Warum belegt also jeder Datentyp eine unterschiedliche Menge an Speicher, um dieses Problem besser zu verstehen, verstehen wir in etwa wie folgt, in Bezug auf Computer, Computer bestehen aus elektronischen Komponenten, einschließlich elektronischer Komponenten, bestehen aus Leiterplatten und verwenden Strom zum Übertragen Daten, und es interpretiert nur 0,1 als das Äquivalent des Schaltstroms in elektronischen Geräten. Um also einen beliebigen Datentyp darzustellen, konvertiert der Computer ihn schließlich in binär. Daher wird jede Zahl, jedes Zeichen oder jede Zeichenfolge, wenn sie zur Ausführung in die Maschinensprache übertragen werden, auch in die Werte 0 und 1 umgewandelt. Wenn Sie mehr über die Darstellung erfahren möchten, lesen Sie weitere Artikel, die ganzzahlige Darstellungen in Binär- und Binäroperationen schreiben .
Beispielsweise wird die Zahl 31, wenn sie binär dargestellt wird, 11111 sein, mit dem Datentyp int werden ihr 2 Bytes zugewiesen, was 16 Bits entspricht, und die folgende Zahlenfolge im RAM-Speicher speichern: 00000000011111 (die führende Null). das Mengenzeichen, um zu bestimmen, ob die ganze Zahl positiv oder negativ ist)
(000011111)₂ = (0 × 2⁸) + (0 × 2⁷) + (0 × 2⁶) + (0 × 2⁵) + (1 × 2⁴) + (1 × 2³) + (1 × 2²) + (1 × 2¹) + (1 × 2⁰) = (31)₁₀
Daher kann es mit einem regulären int nur die größte Zahl 32767 (0111111111111111) darstellen, und die kleinste ist -32767 (0111111111111111).
Dem Zeichen ( char ) wird 1 Byte zugewiesen, das 8 Bit entspricht, was ein Zeichensatz in der ASCII -Codierung (American Information Interchange Code Standard) ist. Jedes dieser Zeichen kann vollständig in Form von Zahlen dargestellt werden und wir können direkt in der Codetabelle abgleichen. Beispielsweise ist für das Zeichen „A“ der dezimale ASCII-Code 65 , speichern Sie die folgende Sequenz im RAM: 01000001.
Ähnlich wie float und double , aber diese beiden Datentypen sind ziemlich kompliziert darzustellen, daher erwähne ich sie hier nicht, und wir sehen, je komplexer der Datentyp ist, desto mehr Speicher wird benötigt, um ihn zu speichern.
Beispieltabelle, die variable Mikrodaten beschreibt
Datentypen | Speichergröße (in Bit) | Leistungsbereich |
---|---|---|
verkohlen | 8 | -128 -> 127 (ASCII-Code) |
ohne Vorzeichen | 8 | 0 -> 255 |
unterschriebenes Zeichen | 8 | -128 -> 127 (ASCII-Code) |
int | 16 | -32.678 -> 32.767 |
unsigned int | 16 | 0 -> 65.535 |
unterzeichnet int | 16 | -32.678 -> 32.767 |
kurz int | 8 | -128 -> 127 |
lang int | 32 | -2.147.483.648 -> 2.147.483.647 |
Beispiel für einfache Variablendeklaration:
/* khai bao thu vien chuan */ #include<stdio.h> #include<stdlib.> /* end khai bao thu vien chuan */ int main() { // khai bao bien so nguyen int songuyen; // gan gia tri cho so nguyen bang 5 songuyen = 5; // khai bao va gan luon gia tri cho so nguyen int songuyencach2 = 6; // khai bao bien c la ki tu va gan bang ky tu 'A'; char c = 'A'; // khai bao bien so thuc va gan gia tri bang 5.1 float sothuc = 5.1; }
Über die Funktion sizeof()
Die Funktion sizeof ist eine eingebaute Funktion der Programmiersprache c, die verwendet wird, um die Größe des Datentyps zu messen, der Rückgabewert der Funktion ist eine Ganzzahl, die die Größe des Datentyps darstellt, den wir prüfen.
Die sizeof-Funktionssyntax:
#include stdio.h #include stdlib.h int main(){ int a; a = sizeof(int); printf("%d",a); return 0; } // kết quả in ra trả về 2 với hệ 16 bit, 4 với hệ 32 và 64bit
Einführung in die Funktion printf()
Die printf-Funktion ist eine Funktion im Eingabe-Ausgabe-System der Sprache C, dies ist eine klassische Funktion, die häufig verwendet wird, um Daten von Variablen über den Formatbezeichner auf dem Bildschirm auszugeben. Wir werden im Artikel Input, Output näher darauf eingehen. In diesem Artikel werde ich ein Beispiel für die Verwendung der grundlegenden printf-Funktion und Formatierer geben, damit jeder das Problem verstehen kann.
Die Syntax der Funktion printf() :
printf("%d",a); // in biến a dưới dạng só nguyên (decimal) printf("%f",b) // in biến dưới dạng số thực (float) printf("%c",c) // in biến dưới dạng ký tự (character)
Beispiel einer Kombination aus Variablendeklaration und printf()- Funktion, um Variablenergebnisse auf dem Bildschirm auszugeben
#include<stdio.h> #include<stdio.h> int main() { // khai bao bien so nguyen int songuyen; // gan gia tri cho so nguyen bang 5 songuyen = 5; // khai bao va gan luon gia tri cho so nguyen int songuyencach2 = 6; // khai bao bien kytu la ki tu va gan bang ky tu 'A'; char kytu = 'A'; // khai bao bien so thuc va gan gia tri bang 5.1 float sothuc = 5.1; printf("%d,%d,%c,%f",songuyen,songuyencach2,kytu,sothuc); }