Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Comprensione dell'Operatore sizeof | Tipi di Dati e Variabili
Fondamenti Di C

bookComprensione dell'Operatore sizeof

La funzione sizeof() è un elemento fondamentale nella programmazione in C. Consente di determinare la dimensione (in byte) dell'oggetto o del tipo specificato. Ad esempio, vediamo quanti byte occupa il tipo di dato int:

main.c

main.c

copy
12345678
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }

Il tipo di dato int occupa 4 byte.

Note
Nota

Tieni presente che compilatori diversi possono allocare dimensioni in byte differenti per lo stesso tipo di dato.

Bit

Un bit è l'unità di base più semplice di dati utilizzata da un computer. Ogni byte è composto da otto bit.

È stato deciso collettivamente dagli ingegneri di equiparare un byte a 8 bit perché questa configurazione rappresenta comodamente i numeri decimali. Probabilmente hai già sentito parlare del sistema numerico binario, che costituisce la base delle operazioni informatiche.

Fondamentalmente, l'obiettivo è rappresentare valori numerici che utilizziamo nella vita quotidiana tramite combinazioni di zeri e uni. Qualsiasi numero può essere rappresentato come una combinazione di potenze di due. Ad esempio, il numero 7 può essere rappresentato come 111, ecco la scomposizione:

I valori 0 o 1 non possiedono significato matematico intrinseco; indicano semplicemente lo stato di un bit.

  • 0 – il bit è inattivo;
  • 1 – il bit è attivo.

Il numero 113, in binario, appare come 01110001:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); printf("Size of char type: %d bytes\n", sizeof(char)); printf("Size of double type: %d bytes\n", sizeof(double)); return 0; }

È possibile utilizzare anche la funzione sizeof() su un array per determinarne la dimensione:

main.c

main.c

copy
12345678910
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }

Un array con 10 elementi interi occupa 40 byte, il che significa che ogni singolo elemento utilizza 4 byte. Se si divide la dimensione totale dell'array per la dimensione di uno dei suoi elementi, si ottiene il numero di elementi dell'array:

main.c

main.c

copy
1234567891011121314151617
#include <stdio.h> int main() { int data[] = { 4, 8, 1, 5, 0, 123, 66, 11, 64, 2, 7, 78, -0, 34, 23, 545, 98, 890, 65, 32, 412, 6, 5465, 87859, 656534, 324, 324, 456, 356, 341, 5654, 534, 756, 12 }; printf("Elements in an array: %d\n", sizeof(data) / sizeof(int); ); // Alternatevly you can use `sizeof(data) / sizeof(data[0])` return 0; }
question mark

Quale espressione C restituisce il numero di elementi nell’array arr?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 7

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 2.63

bookComprensione dell'Operatore sizeof

Scorri per mostrare il menu

La funzione sizeof() è un elemento fondamentale nella programmazione in C. Consente di determinare la dimensione (in byte) dell'oggetto o del tipo specificato. Ad esempio, vediamo quanti byte occupa il tipo di dato int:

main.c

main.c

copy
12345678
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }

Il tipo di dato int occupa 4 byte.

Note
Nota

Tieni presente che compilatori diversi possono allocare dimensioni in byte differenti per lo stesso tipo di dato.

Bit

Un bit è l'unità di base più semplice di dati utilizzata da un computer. Ogni byte è composto da otto bit.

È stato deciso collettivamente dagli ingegneri di equiparare un byte a 8 bit perché questa configurazione rappresenta comodamente i numeri decimali. Probabilmente hai già sentito parlare del sistema numerico binario, che costituisce la base delle operazioni informatiche.

Fondamentalmente, l'obiettivo è rappresentare valori numerici che utilizziamo nella vita quotidiana tramite combinazioni di zeri e uni. Qualsiasi numero può essere rappresentato come una combinazione di potenze di due. Ad esempio, il numero 7 può essere rappresentato come 111, ecco la scomposizione:

I valori 0 o 1 non possiedono significato matematico intrinseco; indicano semplicemente lo stato di un bit.

  • 0 – il bit è inattivo;
  • 1 – il bit è attivo.

Il numero 113, in binario, appare come 01110001:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); printf("Size of char type: %d bytes\n", sizeof(char)); printf("Size of double type: %d bytes\n", sizeof(double)); return 0; }

È possibile utilizzare anche la funzione sizeof() su un array per determinarne la dimensione:

main.c

main.c

copy
12345678910
#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }

Un array con 10 elementi interi occupa 40 byte, il che significa che ogni singolo elemento utilizza 4 byte. Se si divide la dimensione totale dell'array per la dimensione di uno dei suoi elementi, si ottiene il numero di elementi dell'array:

main.c

main.c

copy
1234567891011121314151617
#include <stdio.h> int main() { int data[] = { 4, 8, 1, 5, 0, 123, 66, 11, 64, 2, 7, 78, -0, 34, 23, 545, 98, 890, 65, 32, 412, 6, 5465, 87859, 656534, 324, 324, 456, 356, 341, 5654, 534, 756, 12 }; printf("Elements in an array: %d\n", sizeof(data) / sizeof(int); ); // Alternatevly you can use `sizeof(data) / sizeof(data[0])` return 0; }
question mark

Quale espressione C restituisce il numero di elementi nell’array arr?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 2. Capitolo 7
some-alt