Forståelse av sizeof-Operatoren
Funksjonen sizeof() er en grunnleggende del av C-programmering. Den hjelper til med å bestemme størrelsen (i byte) på det angitte objektet eller typen. For eksempel, la oss se hvor mange byte datatypen int opptar:
main.c
12345678#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }
Datatypen int opptar 4 byte.
Vær oppmerksom på at ulike kompilatorer kan tildele forskjellige antall byte for samme datatypen.
Biter
En bit er den mest grunnleggende enheten for data en datamaskin bruker. Hver byte består av åtte biter.
Det ble bestemt av ingeniører at én byte skulle tilsvare 8 biter fordi denne konfigurasjonen enkelt kan representere desimaltall. Du har sannsynligvis hørt om det binære tallsystemet, som utgjør grunnlaget for datamaskinens operasjoner.
I bunn og grunn handler det om å representere tallverdier vi bruker i hverdagen ved hjelp av kombinasjoner av nuller og ett-tall. Ethvert tall kan representeres som en kombinasjon av to-potensene. For eksempel kan tallet 7 vises som 111, og her er oppdelingen:
Verdiene 0 eller 1 har ikke i seg selv matematisk betydning; de angir bare tilstanden til et bit.
0– biten er inaktiv;1– biten er aktiv.
Tallet 113 ser i binær ut som 01110001:
Main.c
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; }
Du kan også bruke sizeof()-funksjonen på et array for å finne ut størrelsen:
main.c
12345678910#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }
Et array med 10 heltallselementer opptar 40 byte, noe som betyr at hver enkelt element bruker 4 byte. Hvis du deler den totale størrelsen på arrayet med størrelsen på ett av elementene, finner du antall elementer i arrayet:
main.c
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; }
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Awesome!
Completion rate improved to 2.63
Forståelse av sizeof-Operatoren
Sveip for å vise menyen
Funksjonen sizeof() er en grunnleggende del av C-programmering. Den hjelper til med å bestemme størrelsen (i byte) på det angitte objektet eller typen. For eksempel, la oss se hvor mange byte datatypen int opptar:
main.c
12345678#include <stdio.h> int main() { printf("Size of int type: %d bytes\n", sizeof(int)); return 0; }
Datatypen int opptar 4 byte.
Vær oppmerksom på at ulike kompilatorer kan tildele forskjellige antall byte for samme datatypen.
Biter
En bit er den mest grunnleggende enheten for data en datamaskin bruker. Hver byte består av åtte biter.
Det ble bestemt av ingeniører at én byte skulle tilsvare 8 biter fordi denne konfigurasjonen enkelt kan representere desimaltall. Du har sannsynligvis hørt om det binære tallsystemet, som utgjør grunnlaget for datamaskinens operasjoner.
I bunn og grunn handler det om å representere tallverdier vi bruker i hverdagen ved hjelp av kombinasjoner av nuller og ett-tall. Ethvert tall kan representeres som en kombinasjon av to-potensene. For eksempel kan tallet 7 vises som 111, og her er oppdelingen:
Verdiene 0 eller 1 har ikke i seg selv matematisk betydning; de angir bare tilstanden til et bit.
0– biten er inaktiv;1– biten er aktiv.
Tallet 113 ser i binær ut som 01110001:
Main.c
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; }
Du kan også bruke sizeof()-funksjonen på et array for å finne ut størrelsen:
main.c
12345678910#include <stdio.h> int main() { int intArray[10]; printf("Size of int array: %d bytes\n", sizeof(intArray)); return 0; }
Et array med 10 heltallselementer opptar 40 byte, noe som betyr at hver enkelt element bruker 4 byte. Hvis du deler den totale størrelsen på arrayet med størrelsen på ett av elementene, finner du antall elementer i arrayet:
main.c
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; }
Takk for tilbakemeldingene dine!