Tipi di dati di base in C
- 24-07-2022
- Toanngo92
- 0 Comments
Nel precedente articolo abbiamo appreso come le variabili memorizzano i valori nei computer e la sintassi per dichiarare le variabili, in questo articolo discuteremo dei tipi di dati in linguaggio C, richiamando la conoscenza di Nella lezione precedente, capiamo che quando si dichiara un dato digita una variabile da memorizzare, il computer ci assegnerà automaticamente una posizione di memoria (indirizzo di memoria) con una dimensione specificata (dimensione della memoria ) sufficiente per memorizzare il tipo di dati che desideriamo. E poiché il linguaggio di programmazione C richiede una sintassi rigorosa, non è possibile assegnare un valore di questo tipo di dati a una variabile di un altro tipo di dati, una volta dichiarato un qualsiasi tipo di dati per la variabile, è possibile assegnare solo un valore. variabile.
Mục lục
Parole chiave (parole chiave) nella dichiarazione di variabile C
Se non capisci il concetto di parole chiave, puoi rileggere l'articolo C struttura del programma, elenco di parole chiave (parole chiave) in linguaggio C per comprendere nuovamente il concetto. Qui si parla delle parole chiave per determinare il tipo di dati della variabile quando si dichiara la variabile. Quando si dichiara una variabile, è necessario assicurarsi che il nome della variabile non possa avere la stessa parola chiave (il nome della variabile può contenere parole chiave ma non può essere identico, ad esempio:
int int; // lỗi int intNum; // không lỗi
Elenco dei tipi di dati di base in C
I tipi comuni di dati archiviati nelle variabili includono:
- Dati numerici
- Numero intero. Esempio (6 o -5)
- Numero reale. Esempio (5.20 o 7.234)
- Numeri positivi
- Numeri negativi
- Dati di testo (ad es. "abcde" , "Sto provando")
- Dati logici (vero/falso)
Quando i dati sono archiviati in variabili di diversi tipi di dati, richiedono diverse quantità di memoria. La quantità di memoria assegnata a una variabile dipende dal tipo di dati della variabile (simile ad altri linguaggi di programmazione). Sintassi in C quando si utilizzano tipi di dati:
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 }
Nel linguaggio C, ci sono 5 tipi di dati di base:
int – il tipo di dati intero, utilizzato per rappresentare gli interi allo stato brado (abbreviato interger ), occupa 2 byte di memoria. (Esempio 5 o 100 o 10000)
float, tipo di dati double – numero reale, che rappresenta quantità decimali come in matematica, il tipo float occupa 4 byte e può rappresentare 6 numeri dopo il decimale (es. 5.999999), e il tipo double occupa un'area di memoria di 8 byte, rappresentando 10 cifre dopo il decimale
char – tipo di dati carattere, occupa 1 byte di memoria che rappresenta singoli caratteri ( 'A','a','B','1','2' …). Nota che il carattere '1' è diverso dall'intero 1
void – tipo di dati utilizzato per la dichiarazione di funzione (non utilizzato per la dichiarazione di variabile), utilizzato per dichiarare una funzione che non restituisce un valore. Sarà menzionato nel concetto di funzioni.
Tipo di dati derivato
Un modificatore utilizzato per combinarsi con tipi di dati numerici di base per soddisfare diverse situazioni (ridurre la dimensione della memoria, aumentare la dimensione della memoria, aumentare la rappresentazione delle variabili), contribuire a rendere il programma più ottimizzato, salvare la memoria di sistema o rappresentare numeri più grandi delle normali variabili del tipo di dati possono rappresentare. (Sarà menzionato nell'esempio seguente)
segno – tipo di dati con segno
unsigned – tipo di dati non firmato
long – alloca il doppio della dimensione della memoria del tipo di dati
short – alloca metà della dimensione della memoria del tipo di dati
Sintassi della dichiarazione:
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
Quindi, perché ogni tipo di dati occupa una quantità diversa di memoria, per capire meglio questo problema, capiamo più o meno quanto segue, in termini di computer, i computer sono progettati da componenti elettronici, compresi i componenti elettronici, è costituito da circuiti stampati e utilizza la corrente per trasmettere dati e interpreta solo 0,1 come l'equivalente della corrente di commutazione nelle apparecchiature elettroniche. Quindi, per rappresentare qualsiasi tipo di dati, il computer alla fine lo converte in binario. Pertanto, ogni numero, ogni carattere o stringa di caratteri quando viene inserito nel linguaggio macchina per eseguirlo verrà convertito anche nel valore 0 e 1. Se vuoi saperne di più sulla rappresentazione, leggi altri articoli scrivi Rappresentazione intera in operazioni binarie e binarie .
Ad esempio, il numero 31 quando rappresentato in binario sarà 11111, con tipo di dati int , verranno allocati 2 byte, equivalenti a 16 bit e memorizzerà la seguente sequenza di numeri nella memoria RAM: 000000000011111 (lo zero iniziale).first rappresentano il segno della quantità per determinare se l'intero è positivo o negativo)
(000011111)₂ = (0 × 2⁸) + (0 × 2⁷) + (0 × 2⁶) + (0 × 2⁵) + (1 × 2⁴) + (1 × 2³) + (1 × 2²) + (1 × 2¹) + (1 × 2⁰) = (31)₁₀
Pertanto, con un int regolare, può rappresentare solo il numero più grande 32767 (011111111111111111) e il più piccolo è -32767( 01111111111111111)
Per quanto riguarda il carattere ( char ), verrà assegnato 1 byte equivalente a 8bit, che è un set di caratteri nella codifica ASCII (American Information Interchange Code Standard), ognuno di questi caratteri può essere completamente rappresentato nella forma numeri e possiamo corrispondono direttamente nella tabella dei codici. Ad esempio, per il carattere 'A', il codice ascii decimale è 65, memorizzare la seguente sequenza nella RAM: 01000001.
Simile a float e double , ma questi due tipi di dati sono piuttosto complicati da rappresentare, quindi non li menziono qui e vediamo, più complesso è il tipo di dati, maggiore è la memoria necessaria per la memoria.
Tabella di esempio che descrive i microdati variabili
Tipi di dati | Dimensioni della memoria (in bit) | Gamma di prestazioni |
---|---|---|
car | 8 | -128 -> 127 (codice ASCII) |
non firmato | 8 | 0 -> 255 |
carattere firmato | 8 | -128 -> 127 (codice ASCII) |
int | 16 | -32.678 -> 32.767 |
int. non firmato | 16 | 0 -> 65.535 |
firmato int | 16 | -32.678 -> 32.767 |
corto int | 8 | -128 -> 127 |
lungo int | 32 | -2.147.483.648 -> 2.147.483.647 |
Esempio di dichiarazione di variabile di base:
/* 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; }
Informazioni sulla funzione sizeof()
La funzione sizeof è una funzione incorporata del linguaggio di programmazione c, usata per misurare la dimensione del tipo di dati, il valore di ritorno della funzione sarà un intero, che rappresenta la dimensione del tipo di dati che controlliamo.
La sintassi della funzione sizeof:
#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
Introduzione alla funzione printf()
La funzione printf è una funzione nel sistema di input output del linguaggio C, questa è una funzione classica, spesso usata per stampare i dati dalle variabili allo schermo tramite l'identificatore di formato . Parleremo più approfonditamente nell'articolo input, output. In questo articolo, fornirò un esempio di come utilizzare la funzione printf di base e i formattatori in modo che tutti possano capire il problema.
La sintassi della funzione 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)
Esempio di una combinazione di dichiarazione di variabili e funzione printf() per stampare i risultati di variabili sullo schermo
#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); }