1樓:蔣金多多多
總結一下哈:針對大部分32位機器來說所佔記憶體是: char 字元型 1個;int整型2 個;short 2 個;但是,不同的專機屬器,和不同的編譯軟體下,都會不同。
所以你可以用sizeof()函式測試一下。例sizeof(char);
這裡補充下我的答案,之前回答這個問題時候,自己還是一名微控制器開發愛好者,c51微控制器中的int確實是16位,兩個位元組。
而現在的我從事應用軟體開發,在這些編譯器中(比如vs、gcc),int一般都是4位的(無論32位還是64位)。事實上,一個比較官方的解釋是:編譯器可以根據自身硬體來選擇合適的大小,但是需要滿足約束:
short和int型至少為16位,long型至少為32位,並且short型長度不能超過int型,而int型不能超過long型。這即是說各個型別的變數長度是由編譯器來決定的。
2樓:匿名使用者
通常char佔1個位元組,short佔2個位元組。原因是,1個位元組可以表示一個ascii碼,為了提高計算機的數版據處理權能力,short用一個位元組遠遠不足,但限於早年的儲存器體積和**,用2個位元組也是不得以的事情。現在,儲存器的體積不再是考慮的因素,**也不是「事」,cpu的資料暫存器已經是64位(8個位元組),32位的cpu已近末日黃昏,所以short用8個位元組表示不再是夢。
所謂64位的cpu,指的就是其資料暫存器(包括指令暫存器)的寬度是64bits,一次讀取、儲存64bits最為快捷,這就是int型別資料的標準寬度。
3樓:匿名使用者
一般來說
int 4位元組
char 1位元組
short 2位元組
由編譯器決定的,編譯器會根據系統平臺自己改變資料型別的取值範圍。
4樓:匿名使用者
理論像樓上說的這樣,實際上int型變數要看機器32位和64位機器是不同的,你可以用
sizeof()函式測試一下
5樓:
16位編譯器
char :1個字
節char*(即指標變數): 2個位元組專
屬short int : 2個位元組
int: 2個位元組
unsigned int : 2個位元組
float: 4個位元組
double: 8個位元組
long: 4個位元組
long long: 8個位元組
unsigned long: 4個位元組
32位編譯器
char :1個位元組
char*(即指標變數): 4個位元組(32位的定址空間是2^32, 即32個bit,也就是4個位元組。同理64位編譯器)
short int : 2個位元組
int: 4個位元組
unsigned int : 4個位元組
float: 4個位元組
double: 8個位元組
long: 4個位元組
long long: 8個位元組
unsigned long: 4個位元組
64位編譯器
char :1個位元組
char*(即指標變數): 8個位元組
short int : 2個位元組
int: 4個位元組
unsigned int : 4個位元組
float: 4個位元組
double: 8個位元組
long: 8個位元組
long long: 8個位元組
unsigned long: 8個位元組
6樓:六閒村
字元型 char 1 位元組
整型 int 2 位元組
short 2 位元組
長整型 long 4 位元組
單精度 float 4 位元組
雙精度 double 8 位元組
7樓:匿名使用者
是由c語言編譯器來決定的!
求, c語言中所有常見的資料型別(如short,float,int,char,等等)在記憶體中所佔的
8樓:匿名使用者
變數佔用記憶體位元組
由作業系統決定,
64位系統中,long佔用8位元組,……
32位作業系統中,回int,long佔用4位元組答,short佔用2位元組……
16位系統中,int佔用2位元組,……
數字3佔用多少,和你宣告的的型別有關,
在32位系統中,將3賦值給short型變數,他就佔用2個位元組,如果賦值給int型,他就佔用4個位元組
可以用sizeof這個函式來計算。例子:
int x, n;
n = sizeof(x);
n的值就是結果。使用sizeof求,
#include
int main()
不同軟體編譯答案不同
9樓:匿名使用者
字元型 char 1 位元組
整型 int 2 位元組 short 2 位元組長整型 long 4 位元組
單精度 float 4 位元組
雙精度 double 8 位元組
c語言中exit怎麼定義,在C語言中,exit 0 是什麼意思
函式名 exit 所在標頭檔案 stdlib.h 功 能 關閉所有檔案,終止正在執行的程式。exit 1 表示回異常退出.這個答1是返回給作業系統的不過在dos好像不需要這個返回值 exit x x不為0 都表示異常退出 exit 0 表示正常退出 用 法 void exit int status ...
c語言中extern是什麼意思,在C語言中標頭檔案的extern是什麼意思呢?
extern 宣告的函式是在外部定義的函式例項,最常見的就是通過extern定義在win32 dll定義的非託管函式。就是全域性變數的意思,在建立工程的情況下,其他檔案也可以呼叫這個變數。用了extern,就表示這個變數是全域性的和動態的,不存在使用哪一個的問題.比如3號檔案的int a變成289了...
在c語言中如何用log函式啊,在C語言中如何用log函式啊?
把printf m 5.2 f n m 改為printf m 5.2f n m c語言中log函式怎麼使用啊 1 c語言中,有兩個log函式,分別 為log10和log函式,具體用法如下 2 函式名 log10 功 能 對數函式log,以10為底 用 法 double log10 double x ...