logo

Kaj je dvojno v C?

V tej temi bomo razpravljali o dvojnem podatkovnem tipu v programskem jeziku C. Jezik C ponuja štiri glavne tipe podatkov, kot je npr int, char, float , in lebdi . Podatkovni tip int se uporablja za shranjevanje celega števila, podatkovni tip char se uporablja za shranjevanje znakovnega tipa, podatkovni tip float pa za shranjevanje podatkov decimalnega tipa z enojno natančnostjo.

A dvojno je podatkovni tip v jeziku C, ki shranjuje visoko natančne podatke s plavajočo vejico ali števila v pomnilnik računalnika. Imenuje se dvojni podatkovni tip, ker lahko vsebuje dvojno velikost podatkov v primerjavi s plavajočim podatkovnim tipom. Dvojnik ima 8 bajtov , kar je enako 64 bitov v velikosti. Pri dvojnem podatkovnem tipu je 1 bit za predznak, 11 bitov za eksponent in preostalih 52 bitov za mantiso. Razpon dvojnega je od 1,7E-308 do 1,7E+308. Dvojni podatki so lahko predstavljeni v realnem številu (1, 10), decimalkah (0,1, 11,002) in minus (-1, -0,00002). Vsebuje lahko približno 15 do 16 števk pred in za decimalno vejico.

Na primer 4,5672, 2,45354, -5,22234, 3,12345678901, 0,15197e-7 itd.

Kaj je dvojno v C

Deklaracija in inicializacija dvojne spremenljivke

Deklaracija dvojne spremenljivke: Če želite deklarirati dvojno spremenljivko v C , moramo določiti vrsto podatkov in ime spremenljivke.

 double data1; 

Inicializacija dvojne spremenljivke: Za inicializacijo spremenljivke lahko imenu spremenljivke podamo veljavno vrednost.

 Data1 = 3.2325467; 

Poleg tega lahko deklariramo in inicializiramo ime spremenljivke v eni vrstici.

 double data1 = 3.2325467; 

Program za pridobivanje velikosti podatkovnih tipov s funkcijo sizeof().

Oglejmo si primer za tiskanje velikosti vseh tipov podatkov v programskem jeziku C.

kazalec dereference c

Get_size.c

 #include #include void main() { // use sizeof() function to get the size of data type in c printf (' The size of int data type is %d', sizeof(int)); printf (' The size of char data type is %d', sizeof(char)); printf (' The size of float data type is %f', sizeof(float)); printf (' The size of double data type is %f', sizeof(double)); getch() } 

Izhod:

 The size of int data type is 4 The size of char data type is 1 The size of float data type is 4 The size of double data type is 8 

V zgornjem programu uporabljamo a sizeof () za pridobitev velikosti podatkovnih tipov integer, float, character in double, pri čemer obide int, char, float in double kot parameter.

Program za pretvorbo stopal v metre z dvojnim podatkovnim tipom

Oglejmo si primer posredovanja dvojnega podatkovnega števila kot parametra funkciji in nato pretvorbo stopal v metre.

Prog.c

 #include double feet_to_meter (double f); // declare a user defined function int main() { double feet, cnvt; // declare a variable as the double data type printf (' Enter the feet in double '); scanf('%lf', &feet); cnvt = feet_to_meter(feet); // call feet_to_meter function printf (' Converted feet to meter is: %lf', cnvt); return 0; } // definition of the function double feet_to_meter (double f) { return f / 3.28; } 

Izhod:

 Enter the feet in double 45.78 Converted feet to meter is: 13.957317 

Program za pretvorbo celoštevilskih podatkov v dvojni podatkovni tip

Oglejmo si primer pretvorbe int števila v dvojno število podatkovnega tipa v C.

Prog2.c

 #include int main() { int sum = 17, count = 5; double var; var = (double) sum / count; printf (' Convert an int value into double data type is: %lf 
', var); } 

Izhod:

 Convert an int value into double data type is: 3.400000 

Program za pretvorbo temperature Celzija v Fahrenheit

Oglejmo si program za pretvorbo dane temperature Celzija v Fahrenheite v C.

Pretvori.c

 #include int main() { // declaration of double variable double c_temp, f_temp; printf(' Enter the temperature in Celsius: '); scanf (' %lf', &c_temp); // accept the Celsius temperature f_temp = ( c_temp * 1.8) + 32; // use conversion formula printf (' The temperature in Fahrenheit is: %lf', f_temp); return 0; } 

Izhod:

javascript onload
 Enter the temperature in Celsius: 56.8 The temperature in Fahrenheit is: 134.240000 

Program za tiskanje vsote dveh dvojnih števil z uporabo funkcije

Oglejmo si program za pridobivanje vsote dveh dvojnih števil z uporabo funkcije v C.

dvojno.c

 #include double sum_num(double p, double q); int main() { // declaration of the double variables double x, y, res; printf (' Enter two double numbers '); scanf(' %lf %lf', &x, &y); // take two double variable from user res = sum_num(x, y); // call double function printf (' The result of two double number is: %lf', res); return 0; } double sum_num(double p, double q) { return p + q; // return the sum of double values } 

Izhod:

 Enter two double numbers 34.798 43.567 The result of two double number is: 78.365000 

float proti dvojnemu

float podatkovni tip: Plavajoči je podatkovni tip z enojno natančnostjo, ki vsebuje 32-bitno plavajočo vejico ali decimalno število in je enak 4 bajtom. Je vnaprej določen tip podatkov ali ključna beseda, katere pomena in imena ni mogoče spremeniti. Podatkovni tip float je hitrejši od dvojnega, ker je njegov obseg majhen. Vsebuje lahko približno 7 števk. Poleg tega je obseg podatkovnega tipa float 1,5 x 10-Štirina 3,4 x 1038.

dvojni podatkovni tip: Dvojnik je natančen podatkovni tip, ki vsebuje 64 bitov s plavajočo vejico ali decimalno število in je enak 8 bajtom. Je tudi vnaprej določen tip podatkov, katerega pomena in imena ni mogoče spremeniti. V primerjavi s podatkovnim tipom float je počasnejši, ker je njegova velikost velika. Vsebuje lahko od 15 do 17 števk. In obseg dvojnih podatkov je 5,0 x 10-3. 4. 5na 1,7 x 10308.

Zaključek:

Tip dvojnega podatka je podatek s plavajočim kazalcem dvojne natančnosti. Zadrži lahko dvojno velikost podatkov v primerjavi s podatkovnim tipom float, ker dvojno zajema 64 bitov v pomnilniku računalnika, kar je več kot 32 bitov podatkovnega tipa float. Običajno se uporablja za obravnavo velikega števila števil in mantise za natančnost. Mnogi programerji izberejo dvojni podatkovni tip, ker daje natančne rezultate, povezane z decimalko za kompleksna števila.