Latest web development tutorials

C-Datentypen

In der C-Sprache bezieht sich Datentyp auf einen weiten Bereich von Systemen für die Variable oder Funktionsdeklaration verschiedene Typen. Typ der Variablen bestimmt die Variable Speicherplatz belegt ist, und wie die gespeicherten Bitmuster zu interpretieren.

C lassen sich in folgende Kategorien unterteilt werden:

序号类型与描述
1基本类型:
它们是算术类型,包括两种类型:整数类型和浮点类型。
2枚举类型:
它们也是算术类型,被用来定义在程序中只能赋予其一定的离散整数值的变量。
3void 类型:
类型说明符void表明没有可用的值。
4派生类型:
它们包括:指针类型、数组类型、结构类型、共用体类型和函数类型。

Array-Typ und Struktur des Typs als Aggregattypen bezeichnet. Art der Funktion bezieht sich auf die Art der Funktion Rückgabewerte. Im nächsten Abschnitt dieses Kapitels werden wir den Grundtyp, andere Typen einführen wird in den Rücken ein paar Kapitel erläutern.

Integer-Typ

In der folgenden Tabelle sind die Informationen über die Standard-Integer-Typen von Speichergrößen und Wertebereiche:

类型存储大小值范围
char1 字节-128 到 127 或 0 到 255
unsigned char1 字节0 到 255
signed char1 字节-128 到 127
int2 或 4 字节-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647
unsigned int2 或 4 字节0 到 65,535 或 0 到 4,294,967,295
short2 字节-32,768 到 32,767
unsigned short2 字节0 到 65,535
long4 字节-2,147,483,648 到 2,147,483,647
unsigned long4 字节0 到 4,294,967,295

Man beachte, dass die Größe der verschiedenen Arten von Speichersystemen, die der Anzahl von Bits im Zusammenhang mit, aber ein 64-Bit-System für allgemeine Zwecke basieren.

Hier sind die Unterschiede zwischen 32-Bit- und 64-Bit-Systemspeichergröße (Fenster gleich):

Um einen Typ einer Variablen oder die genaue Größe auf einer bestimmten Plattform zu erhalten, können Sie densizeof - Operator verwenden.Expressionsizeof (Typ)ein Objekt oder eine Art von Speicherbytes zu geben. Das folgende Beispiel zeigt int-Typ Größe Get:

#include <stdio.h>
#include <limits.h>

int main()
{
   printf("int 存储大小 : %lu \n", sizeof(int));
   
   return 0;
}

Wenn Sie in Linux kompilieren und das obige Programm ausführen, wird es die folgenden Ergebnisse erzielt:

int 存储大小 : 4 

Float-Typ

In der folgenden Tabelle sind die Informationen über die Standard-Floating-Point-Typ Speichergröße, Wertebereich und Genauigkeit:

类型存储大小值范围精度
float4 字节1.2E-38 到 3.4E+386 位小数
double8 字节2.3E-308 到 1.7E+30815 位小数
long double16 字节3.4E-4932 到 1.1E+493219 位小数

Float.h Header-Datei definiert Makros können im Programm und andere relevante Details der Werte der reellen Zahlen binär dargestellt verwendet werden. Die folgenden Beispiele Ausgabe ein Gleitkommatyp Stauraum sowie deren Wertebereich:

#include <stdio.h>
#include <float.h>

int main()
{
   printf("float 存储最大字节数 : %lu \n", sizeof(float));
   printf("float 最小值: %E\n", FLT_MIN );
   printf("float 最大值: %E\n", FLT_MAX );
   printf("精度值: %d\n", FLT_DIG );
   
   return 0;
}

Wenn Sie in Linux kompilieren und das obige Programm ausführen, wird es die folgenden Ergebnisse erzielt:

float 存储最大字节数 : 4 
float 最小值: 1.175494E-38
float 最大值: 3.402823E+38
精度值: 6

Typ void

Hohlraumtyp angegebene Wert ist nicht verfügbar. Es wird typischerweise in den folgenden drei Fällen verwendet:

序号类型与描述
1函数返回为空
C 中有各种函数都不返回值,或者您可以说它们返回空。不返回值的函数的返回类型为空。例如void exit (int status);
2函数参数为空
C 中有各种函数不接受任何参数。不带参数的函数可以接受一个 void。例如int rand(void);
3指针指向 void
类型为 void * 的指针代表对象的地址,而不是类型。例如,内存分配函数void *malloc( size_t size );返回指向 void 的指针,可以转换为任何数据类型。

Nun, wenn Sie noch nicht in vollem Umfang die Leere Art verstehen kann, nicht zu viel Sorge, in den nachfolgenden Abschnitten wir auf diese Konzepte erarbeiten wird.