1樓:匿名使用者
char 是指字元型別,佔一個位元組內
存空間int 是指整型資料,佔四個位元組記憶體內空間double是指雙精度浮點
容型資料,佔八位元組記憶體空間
在程式設計中,根據使用的資料要求進行變數定義,選擇合適的變數型別,如:
char choice ; //定義一個字元cout << "input a choice (0-9):" ;
cin >> choice ; //這裡要求輸入一個字元0-9,所以,定義成char型別較好。 當然也可以定義成int型別,如:
int choice ;
cout << "input a choice (0-9):" ;
cin >> choice ;
int age ; //年齡當然用整型變數合適int n;
如果需要用到小數,就使用double,如:
double money;
double distance ; //計算兩點間的距離
2樓:匿名使用者
宣告方法bai相同,只是du每一個型別都有自己表達的數zhi據dao範圍
int 只能表示整回數
char 表示字元
double表示浮點數,即
答帶小數點的數
在輸入的時候使用不同的標識,比如int 用scanf("%d", &a);char用%c,char陣列用%s,double用%lf
在c++中定義時int和double有何區別
3樓:大野瘦子
1、型別不同
int 和 double 雖然都是基本資料型別,但 int 是整形, double 是浮點型。
2、在計算中的儲存方式不同
int在32位計算機中佔4個位元組,這4個位元組的在記憶體中存放的順序為低位元組存在低地址,高位元組存在高地址。
double是64位的,在儲存方式上都是遵從ieee的規範,其遵從的是 ieee r64.53。
c\c++中int、double等資料型別範圍的理解
例項**:
short sia = -32760;
short sib = (-32760 + 32768) % 65536 - 32768;
printf("not overflow\n");
printf("sia = %hd\n", sia);
printf("sib = %hd\n", sib);
sia = -32769;
sib = (-32769 + 32768) % 65536 - 32768;
printf("\noverflow\n");
printf("sia = %hd\n", sia);
printf("sib = %hd\n", sib);
sia = 32768;
sib = (32768 + 32768) % 65536 - 32768;
printf("\noverflow\n");
printf("sia = %hd\n", sia);
printf("sib = %hd\n", sib);
執行結果:
說明:1、在賦值操作時,如sia = -32769,-32769是先作為一個常量值存放在記憶體中,這個數值是沒有越界的概念的,就是二進位制值,只是在賦值操作時才進行了對應的資料轉換;
2、從執行結果可見,該處理機制對資料溢位和不溢位得到的結果都是適用的;
3、聯想資料閉環迴圈,如程式中32768,超過short型上限,其溢位一個數,作為一個資料閉環,則直接跳轉到了-32768,也就是short型下限值。
4樓:匿名使用者
int 和 double 都是基本資料型別, int 是整形, double 是浮點型。
1.int 型變數佔用的儲存空間和機器字一樣大,即 32位系統中是 4個位元組; 64位系統中是 8個位元組;
而 double 型變數 一般佔用8位元組,double 型變數佔用的儲存空間不會小於 int 型變數。
2.double 型表示的值範圍要比 int 表示的值範圍大,且從 double 值轉換到 int 值,會進行四捨五入,從而有精度損失。
擴充套件資料
一整形1.整形有char、short、int、long、long long,這5個也預設為signed xx ;
規則:short至少16位;int至少和short一樣;long至少32位,且至少和int一樣長;long long至少64位,且至少和long一樣長。
其中,後面4個都有無符號變體。unsigned short、unsigned int、unsigned long、unsigned long long.
注意,unsigned本身是unsigned int的縮寫。
可以看到,在32位和64位計算機上,對於整形唯一不同的就是int和指標的大小,其中32位計算機上int佔2位元組,64位上佔4位元組。指標大小和int大小相同。
2.wchar_t
char是8位字元型別,最多隻能包含256種字元,許多外文字符集所含的字元數目超過256個,char型無法表示。
wchar_t資料型別一般為16位或32位.
總之,wchar_t所能表示的字元數遠超char型。
標準c++中的wprintf()函式以及iostream類庫中的類和物件能提供wchar_t寬字元型別的相關操作。
3.++11新增型別:char16_t和char32_t
char16_t:16位無符號->字首u表示
char32_t:32位無符號->字首u表示
二、浮點型
浮點有3個,float、double、long double
規則:float至少4位元組;double至少6位元組,且不少於float;long double至少和double一樣多。
通常float32位,double64位,long double80、96或128位。我在vs2013上測到long double位64位。
參考資料
5樓:小澈
在c++中,int和double有以下幾個區別:
1、型別區別:
int是定義的整型資料,如int a 則a的值只能是整型,比如a=3。
double雙精度浮點數,就是有小數點的數。
2、在計算中的儲存方式:
int在32位計算機中佔4個位元組,這4個位元組的在記憶體中存放的順序為低位元組存在低地址,高位元組存在高地址。
double是64位的,在儲存方式上都是遵從ieee的規範,其遵從的是 ieee r64.53。
在記憶體中的儲存主要分成三部分,分別是:
符號位(sign):0代表正數,1代表負數
指數位(exponent):用於儲存科學計數法中的指數部分,並且採用移位儲存方式
尾數位(mantissa):用於儲存尾數部分
3、表達範圍:
int:在32/64位系統中都是32位,取值範圍為-2147483648~+2147483647,無符號情況下表示為0~4294967295。
double:有效數字為15-16,數值範圍為-1.7*10(-308)~1.7*10(308);
6樓:匿名使用者
int是一種型別——整數型別,例如:1,2,3,~~~
double也是一種型別——雙精度浮點數型別,例如:1.203156
7樓:沒有響應
int是整數 double是浮點數也就是有小數點的書
8樓:匿名使用者
int代表只能是整數,double是雙精度浮點數u,也就是小數
9樓:
定義時為int分配4個位元組儲存整數(32位),8個位元組給double儲存實數
c語言當中int,float,double,char這四個有什麼區別?
10樓:加百列
區別在以下bai方面:
du一、定義方面:
1、int為整數型,zhi用於定義整dao數型別的資料 。
2、float為單
內精度浮點型,能準確到容小數點後六位 。
3、double為雙精度浮點型,能準確到小數點都十二位 。
4、char為字元型,用於定義字元型別的資料。
二、記憶體佔據:
1、int 的記憶體大小是4 個byte。
2、float 記憶體大小是4 個byte。
3、double 的記憶體大小是8 個byte。
4、char 的記憶體大小是1 個byte。
基本資料型別表如下:
三、表示的資料範圍:
1、int:數的範圍為-(2的31次方-1)到(2的31次方-1),數字為-2 147 483 647~2 147 483 647。
2、double:表示的範圍為+1.111111111111111111111*2^1023(1.後面52個1)為1.7*10^308。負數亦然。
3、float:整數極限為3.4*10^38,負數亦然。
4、char:-128- 127。
11樓:小安無敵
int為整數型,用於定義整數型別的資料
float為單精度浮點型,能準確到小數點後六位double為雙精度浮點型,能準確到小數點都十二位char為字元型,用於定義字元型別的資料
12樓:長孫凌文
一個變數再定義是型別就固定了。如int
a在定義域內a都是整形。當然可以用強制型別轉內換來改變。你容可以用sizeof()來測任意一個變數的長度。
如對於int
a;sizeof(int)=2,sizeof(a)=2;表示int性和a都是2位元組資料。
一般int
char都是2位元組。
float就是單精度其範圍是10e-38到10e38,有效位為6-7.(e是指數意思)
double就是雙精度其範圍是10e-308到10e308,有效位15-16.
long
doule是長雙精度其範圍是10e-4931到10e4931.有效位18-19.
%7表示輸出這個資料的長度為7,一般是為了資料顯示整齊。
如我輸出1234,只有4位,那我就要在自動不3各空格。
當資料超出預定位寬時好像是按實際位輸出,這個有點記不清了。
希望我的回答對你有幫助
C 中5c 10c什麼意思,c 中 5c 10c什麼意思
問題分析 5c表示輸出一個字元,這個字元要佔用5個字元的空間,不足部分在前面補上空格。也就是輸出4個空格和這個字元。同樣 10c輸出9個空格和一個字元。問題擴充套件 代表意思有 兩種意思 1 格式化字串輸出 2 整數取餘 例項如下 1 目前printf支援以下格式的輸出,例如 printf c a ...
C 中的用法,C 中new的用法
除了樓上說的 還有 引用 和 取地址 的含義int a int b a 上述兩行語句執行完之後,a b表示同一個變數,對其中一個的操作相當於對另一個的操作 int a int b a 則b中儲存的是a的地址。對 b 的任何操作相當於對a的操作。表示引用,就是物件的另一個名字,例如 int i 10 ...
C 中pow函式,C 中pow(x,y)函式怎麼用?最好給舉個例子
2型別是整型,0.5屬於浮點數,而你的函式宣告裡面第一個引數是浮點數,第二個引數是整型的,int轉float double可以隱式轉換,編譯器允許這種轉換,但是float double不能隱式轉換成int,這樣可能會造成資料丟失,編譯器不允許,除非你強制轉換 在vc 6.0中原型為double po...