c data types
Scopri tutto su Tipi di dati in C ++ con esempi.
In questo Esercitazioni complete di formazione C ++ , discuteremo i tipi di dati in C ++ in questo tutorial.
Abbiamo già visto identificatori che vengono utilizzati per identificare varie entità in C ++ in base al nome. Oltre agli identificatori, sappiamo anche che le informazioni o i dati della variabile memorizzano.
Per associare i dati alla variabile, dobbiamo anche sapere quali dati assoceremo esattamente, cioè se le variabili memorizzano solo alfabeti o numeri o entrambi. In altre parole, dobbiamo limitare i dati o le informazioni che devono essere archiviati in una variabile.
Questo è esattamente il punto in cui entra in gioco il tipo di dati. Possiamo dire che i tipi di dati vengono utilizzati per indicare alla variabile quale tipo di dati deve memorizzare. In base al tipo di dati assegnato a una variabile, il sistema operativo alloca la memoria e decide quale tipo di dati devono essere memorizzati nella variabile.
Cosa imparerai:
Tipi di dati
Il C ++ supporta due tipi di dati da utilizzare con i suoi programmi.
- Tipi di dati primitivi / standard
- Tipi di dati definiti dall'utente.
Di seguito è riportata la rappresentazione grafica dei tipi di dati in C ++.
Tipi di dati primitivi o standard
I tipi di dati primitivi sono i tipi incorporati forniti dal linguaggio C ++. Possiamo usarli direttamente per dichiarare entità come variabili, costanti, ecc. In alternativa, possiamo anche chiamarli come tipi di dati predefiniti o tipi di dati standard.
Di seguito sono riportati i vari tipi di dati primitivi supportati da C ++ con le parole chiave corrispondenti:
- Intero => int
- Carattere => char
- Virgola mobile => float
- Double Floating Point => doppio
- Boolean => bool
- Tipo Void o Valueless => void
- Carattere ampio => wchar_t
Tipi di dati definiti dall'utente
In C ++ possiamo anche definire i nostri tipi di dati come una classe o una struttura. Questi sono chiamati tipi definiti dall'utente.
Di seguito sono elencati vari tipi di dati definiti dall'utente in C ++:
- Typedef
- Enumerazione
- Classe o oggetto
- Struttura
Di questi tipi, il tipo di dati della classe viene utilizzato esclusivamente con la programmazione orientata agli oggetti in C ++.
Tipi di dati primitivi
La tabella seguente mostra tutti i tipi di dati primitivi supportati da C ++ insieme alle sue varie caratteristiche.
Tipo di dati | Parola chiave C ++ | Tipo di valore |
---|---|---|
Carattere ampio | wchar_t | Carattere comprese le stringhe Unicode |
Personaggio | char | Carattere (valori ASCII) |
Numero intero | int | Numeri interi numerici |
Virgola mobile | galleggiante | Valori decimali con precisione singola |
Punto decimale | Doppio | Valori in virgola mobile a doppia precisione |
Booleano | bool | Vero o falso |
vuoto | vuoto | Senza valore (nessun valore) |
Modificatori del tipo di dati
I tipi di dati primitivi che memorizzano valori diversi utilizzano entità chiamate modificatori del tipo di dati per modificare la lunghezza del valore che possono contenere.
Di conseguenza, in C ++ sono presenti i seguenti tipi di modificatori di dati:
- Firmato
- Non firmato
- Corto
- Lungo
L'intervallo di dati rappresentato da ogni modificatore dipende dal compilatore che stiamo utilizzando.
Il programma seguente produce le varie dimensioni di diversi tipi di dati.
#include using namespace std; int main() { cout<<'Primitive datatypes sizes: '< Produzione:
Dimensioni dei tipi di dati primitivi:
short int: 2 byte
int breve senza segno: 2 byte
int: 4 byte
unsigned int: 4 byte
long int: 8 byte
int lungo senza segno: 8 byte
long long int: 8 byte
unsigned long long int: 8 byte
char: 1 byte
carattere con segno: 1 byte
carattere senza segno: 1 byte
float: 4 byte
doppio: 8 byte
doppio lungo: 16 byte
wchar_t: 4 byte
La schermata di questo output è fornita di seguito.

Come si vede, utilizzando la dimensione dell'operatore, possiamo ottenere la dimensione massima dei dati che ogni tipo di dati supporta.
Tutti questi tipi di dati e le dimensioni corrispondenti possono essere tabularizzati come di seguito.
Tipo di dati Larghezza bit Gamma short int 2 byte 32768 a 32767 char 1 byte Da 127 a 127 o da 0 a 255 carattere non firmato 1 byte Da 0 a 255 firmato char 1 byte Da 127 a 127 int 4 byte 2147483648 a 2147483647 unsigned int 4 byte 0 a 4294967295 firmato int 4 byte 2147483648 a 2147483647 int breve senza segno Gamma Da 0 a 65.535 firmato breve int Gamma 32768 a 32767 lungo int 4 byte 2.147.483.647 a 2.147.483.647 firmato lungo int 4 byte uguale a long int unsigned long int 4 byte Da 0 a 4.294.967.295 galleggiante 4 byte +/- 3,4e +/- 38 (~ 7 cifre) Doppio 8 byte +/- 1.7e +/- 308 (~ 15 cifre) doppio lungo 8 byte +/- 1.7e +/- 308 (~ 15 cifre) wchar_t 2 o 4 byte 1 carattere largo
Si tratta di tipi di dati primitivi in C ++. Tipi di dati definiti dall'utente
Questi tipi di dati, come suggerisce il nome stesso, sono definiti dall'utente stesso. Poiché sono definiti dall'utente, possono essere personalizzati secondo i requisiti del programma.
Typedef
Utilizzando la dichiarazione typedef, creiamo un alias o un altro nome per il tipo di dati. Quindi possiamo usare questo alias per dichiarare più variabili.
Ad esempio, considera la seguente dichiarazione in C ++:
typedef int age;
Attraverso questa dichiarazione, abbiamo creato un alias age per il tipo di dati int.
Quindi, se vogliamo dichiarare qualcosa di simile, possiamo usare l'alias invece del tipo di dati standard come mostrato di seguito:
age num_of_years;
Tieni presente che alias è solo un altro nome per il tipo di dati standard, può essere utilizzato in modo simile ai tipi di dati standard.
Enumerazione
L'enumerazione in C ++ è un tipo di dati definito dall'utente che consiste in un insieme di valori con costanti integrali corrispondenti per ogni valore.
Ad esempio, possiamo dichiarare i giorni della settimana come un tipo di dati enumerato come mostrato di seguito:
enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};
Per impostazione predefinita, le costanti integrali per ciascuno dei valori enum iniziano con zero. Quindi 'domenica' ha valore 0, 'lunedì' ha 1 e così via.
Tuttavia, possiamo anche modificare i valori predefiniti dall'inizio dell'intervallo come segue:
enum daysOfWeek {Sunday, Monday, Tuesday=5, Wednesday, Thursday, Friday, Saturday};
Qui, domenica avrà valore 0, lunedì avrà valore 1 e martedì avrà valore 5 che abbiamo assegnato. Dopo martedì, i valori rimanenti avranno 6, 7 e così via in continuazione con il valore precedente (in questo caso 5).
Usiamo questo enum che abbiamo dichiarato in precedenza nel seguente programma:
#include using namespace std; enum daysOfWeek {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday}; int main() { daysOfWeek today; today = Thursday; cout<<'This is day '< Produzione:
Questo è il giorno 4 della settimana
Lo screenshot per lo stesso è fornito di seguito

Il programma sopra è autoesplicativo. Abbiamo definito l'enum e quindi creiamo la sua variabile di tipo per l'output del giorno della settimana.
Classe
In C ++, possiamo definire un altro tipo definito dall'utente chiamato 'Class'. La classe non è altro che una raccolta di oggetti. La classe funge da modello per un oggetto e utilizzando la definizione della classe possiamo progettare vari problemi in tempo reale.
qa testare le domande dell'intervista per esperti
Ad esempio, si consideri una classe denominata 'Student' che verrà definita come segue:
class student{ char* name; int age; public: void printDetails() { cout<<”Name: “<Una volta definita questa classe, possiamo usare il nome della classe per dichiarare le variabili di tipo class. Queste variabili di tipo classe non sono altro che oggetti.
Quindi dichiariamo un oggetto di tipo studente come segue:
student s1; s1.printDetails();
Come mostrato sopra, possiamo anche accedere ai membri di questa classe che sono pubblici. Vedremo le classi e gli oggetti in dettaglio quando tratteremo la programmazione orientata agli oggetti in C ++.
Struttura
Una struttura in C ++ è simile a quella in C>. In effetti, il concetto di struttura in C ++ viene preso direttamente dal linguaggio C. Come classe, la struttura è anche una raccolta di variabili di diversi tipi di dati. Ma la classe ha sia variabili che metodi che operano su queste variabili o membri come li chiamiamo.
Le strutture, d'altra parte, hanno solo variabili come membri.
Possiamo definire una struttura persona come segue usando la parola chiave struct:
struct employee{ Char name(50); Float salary; Int empId; };
Una volta definita la struttura possiamo dichiarare una variabile di tipo struct come segue:
Employee emp;
Quindi possiamo accedere ai membri della struttura utilizzando la variabile di struttura e l'operatore di accesso ai membri (operatore punto).
Conclusione
Impareremo di più sulla struttura e sulla classe e sulle differenze tra loro una volta che inizieremo con la programmazione orientata agli oggetti in C ++.
Nel nostro prossimo tutorial, esploreremo le variabili C ++ e i suoi altri aspetti.
=> Controlla qui i tutorial di formazione approfonditi su C ++
Lettura consigliata
- Tipi di dati Python
- Tipi di test di migrazione: con scenari di test per ogni tipo
- Astrazione dei dati in C ++
- I 10 migliori strumenti di data science nel 2021 per eliminare la programmazione
- Parametrizzazione dei dati JMeter mediante variabili definite dall'utente
- 10+ migliori strumenti di raccolta dati con strategie di raccolta dati
- Programmazione orientata agli oggetti in C ++
- Oltre 10 migliori strumenti di governance dei dati per soddisfare le tue esigenze di dati nel 2021