W programowaniu w języku C typy danych są deklaracjami dla zmiennych. Określają one typ i rozmiar danych związanych ze zmiennymi. Na przykład,
int myVar;
Tutaj, myVar jest zmienną typu int
(integer). Rozmiar int
wynosi 4 bajty.
Typy podstawowe
Tutaj znajduje się tabela zawierająca powszechnie używane typy w programowaniu w języku C dla szybkiego dostępu.
Typ | Rozmiar (bajty) | Format Specifier |
---|---|---|
int |
co najmniej 2, zwykle 4 | %d , %i |
char |
1 | %c |
float |
4 | %f |
double |
8 | %lf |
short int |
2 zazwyczaj | %hd |
unsigned int |
co najmniej 2, zazwyczaj 4 | %u |
long int |
co najmniej 4, zazwyczaj 8 | %ld , %li |
long long int |
co najmniej 8 | %lld , %lli |
unsigned long int |
co najmniej 4 | %lu |
unsigned long long int |
co najmniej 8 | %llu |
signed char |
1 | %c |
unsigned char |
1 | %c |
long double |
co najmniej 10, zwykle 12 lub 16 | %Lf |
int
Integry są liczbami całkowitymi, które mogą mieć zarówno zero, wartości dodatnie i ujemne, ale nie mają wartości dziesiętnych. Na przykład, 0
, -5
, 10
Możemy użyć int
do zadeklarowania zmiennej typu integer.
int id;
Tutaj, id jest zmienną typu integer.
W programowaniu w języku C można zadeklarować wiele zmiennych jednocześnie. Na przykład
int id, age;
Rozmiar int
wynosi zwykle 4 bajty (32 bity). I, może przyjmować 232
różne stany od -2147483648
do 2147483647
.
float i double
float
i double
służą do przechowywania liczb rzeczywistych.
float salary;double price;
W C, liczby zmiennoprzecinkowe mogą być również reprezentowane w wykładniczym. Na przykład,
float normalizationFactor = 22.442e2;
Jaka jest różnica między float
a double
?
Rozmiar float
(typ danych float pojedynczej precyzji) wynosi 4 bajty. A rozmiar double
(typ danych double precision float) wynosi 8 bajtów.
char
Słowo kluczowe char
jest używane do deklarowania zmiennych typu znakowego. Na przykład,
char test = 'h';
rozmiar zmiennej znakowej wynosi 1 bajt.
void
void
jest typem niekompletnym. Oznacza „nic” lub „brak typu”. Możesz myśleć o void jako o nieobecnym.
Na przykład, jeśli funkcja nie zwraca niczego, jej typem zwrotnym powinien być void
.
Zauważ, że nie można tworzyć zmiennych typu void
.
short i long
Jeśli musisz użyć dużej liczby, możesz użyć specyfikatora typu long
. Oto jak:
long a;long long b;long double c;
Tutaj zmienne a i b mogą przechowywać wartości całkowite. A, c może przechowywać liczbę zmiennoprzecinkową.
Jeśli jesteś pewien, że będzie używana tylko mała liczba całkowita (zakres ), możesz użyć
short
.
short d;
Zawsze możesz sprawdzić rozmiar zmiennej, używając operatora sizeof()
.
#include <stdio.h> int main() { short a; long b; long long c; long double d; printf("size of short = %d bytes\n", sizeof(a)); printf("size of long = %d bytes\n", sizeof(b)); printf("size of long long = %d bytes\n", sizeof(c)); printf("size of long double= %d bytes\n", sizeof(d)); return 0;}
signed i unsigned
W języku C, signed
i unsigned
są modyfikatorami typu. Za ich pomocą można zmienić sposób przechowywania danych danego typu danych. Na przykład,
unsigned int x;int y;
Tutaj zmienna x może przechowywać tylko wartości zerowe i dodatnie, ponieważ użyliśmy modyfikatora unsigned
.
Uważając, że rozmiar int
wynosi 4 bajty, zmienna y może przechowywać wartości od -231
do 231-1
, podczas gdy zmienna x może przechowywać wartości od 0
do 232-1
.
Inne typy danych zdefiniowane w programowaniu w języku C to:
- typ bool
- typ wyliczeniowy
- typy złożone
Pochodne typy danych
Typy danych, które są pochodnymi podstawowych typów danych, są typami pochodnymi. Na przykład: tablice, wskaźniki, typy funkcyjne, struktury, itp.
O pochodnych typach danych dowiemy się w późniejszych tutorialach.