A. 什麼叫數據類型變數的類型定義有什麼作用
數據類型是指數據的類型。
Java中主要有八種基本數據類型:byte、short、int、long、float、double、boolean、char。
各種數據類型作用:
1、byte:
8位、有符號的以二進制補碼表示的整數。
min : -128(-2^7)。
max: 127(2^7-1)。
default: 0。
對應包裝類:Byte。
2、short:
16位、有符號的以二進制補碼表示的整數;
min :-32768(-2^15);
max:32767(2^15 - 1);
default: 0;
對應包裝類:Short。
3、int:
32位、有符號的以二進制補碼表示的整數;
min :-2,147,483,648(-2^31);
max:2,147,483,647(2^31 - 1);
default: 0;
對應包裝類:Integer。
4、long:
64位、有符號的以二進制補碼表示的整數;
min : -9,223,372,036,854,775,808(-2^63);
max: 9,223,372,036,854,775,807(2^63 -1);
default: 0;
對應的包裝類:Long。
5、float:
單精度、32位、符合IEEE 754標準的浮點數;
float 在儲存大型浮點數組的時候可節省內存空間;
浮點數不能用來表示精確的值,如貨幣;
default:0.0f;
對應的包裝類:Float。
6、double:
雙精度、64位、符合IEEE 754標準的浮點數;
浮點數的默認類型為double類型;
double類型同樣不能表示精確的值,如貨幣;
default:0.0d;
對應的包裝類:Double。
7、char:
char類型是一個單一的 16 位 Unicode 字元;
最小值是u0000(即為0);
最大值是uffff(即為65,535);
char 數據類型可以儲存任何字元;
對應的包裝類:Character。
8、boolean:
boolean數據類型表示一位的信息;
只有兩個取值:true 和 false;
這種類型只作為一種標志來記錄 true/false 情況;
對應的包裝類:Boolean。
(1)變數數據類型有哪些擴展閱讀:
自動類型轉換:
指不需要書寫代碼,由系統自動完成的類型轉換。由於實際開發中這樣的類型轉換很多,所以 Java 語言在設計時,沒有為該操作設計語法,而是由 JVM自動完成。
轉換規則:從存儲范圍小的類型到存儲范圍大的類型。
具體規則為:byte→short(char)→int→long→float→double
也就是說 byte 類型的變數可以自動轉換為 short 類型,示例代碼:
byte b=10;
short sh=b;
這里在給sh賦值時,JVM首先將b的值轉換成short類型然後再賦值給sh。
當然,在類型轉換的時候也可以跳躍,就是byte也可以自動轉換為int類型的。
注意問題:在整數之間進行類型轉換的時候數值不會發生變化,但是當將整數類型特別是比較大的整數類型轉換成小數類型的時候,由於存儲精度的不同,可能會存在數據精度的損失。
B. 什麼叫變數 數據類型是什麼
你問的是c語言,或者是其他語言裡面的概念吧。
首先說變數,從字面上理解就是可以變化的量,放到c語言裡面,就是可以被賦值改變的量。
比如說定義一個變數
int a;
我可以給它賦值 a=10;現在a的值就是10 。
然後我在給它賦值a=20;那麼現在它的值就從10變成20了。
a就叫做變數。
和變數對應的就是常量,我上面寫的10 20就是常量,一個確定的值。不能被賦值也不能被改變。
而數據類型這個概念則是因為計算機存儲的緣故而發展出來的一個概念。
其實說起來也很好理解,比如我們在現實中會用整數和小數,分數來區分我們遇到的數字。
在計算機裡面沒有分數,所以它用整型 浮點型來區分整數和小數。
當然因為計算機存儲的問題,同時也算是節約計算機的內存資源,人們又將整數分為普通的整型,和長整型。長整型和普通整型的區別就是存儲的位數更多了(現在好像不區分長整型和整型了)。而同樣的浮點型也分為單精度和雙精度,這是數字方面。
數據還有字元型,字元串型等等,字元型就是之存儲一個字元,而字元串則是一串字元。
C. 什麼是變數變數有哪幾種類型什麼是變數值
變數就相當於數學方程中的x,y,可以對其賦值運算等操作,變數分為整型,浮點型,以及字元型
D. 變數的數據類型是什麼
數據類型在數據結構中的定義是一個值的集合以及定義在這個值集上的一組操作。 變數是用來存儲值的所在處;它們有名字和數據類型。變數的數據類型決定了如何將代表這些值的位存儲到計算機的內存中。在聲明變數時也可指定它的數據類型。所有變數都具有數據類型,以決定能夠存儲哪種數據。
E. 請問"變數"是什麼類型的數據類型
比如在C++中int
a;就是定義一個a變數為整型,double
a;則是定義a為雙精度型,也就是說變數你可以隨便定義成什麼類型的數據類型
F. 字元變數的數據類型是什麼
字元變數的數據類型是Char類型,Char 數據類型是單個雙位元組Unicode字元變數。一個值的集合以及定義在這個值集上的一組操作,變數是用來存儲值的所在處,它們有名字和數據類型。
char用於C或C++中定義字元型變數,只佔一個位元組,取值范圍為 -128 ~ +127。C語言中如int、long、short等不指定signed或unsigned時都默認為signed,但char在標准中不指定為signed或unsigned,編譯器可以編譯為帶符號的,也可以編譯為不帶符號的。
Excel中形式char函數
在excel中char函數用於返回對應發於數字代碼的字元,其中,參數number為轉換的字元代碼,介於0~255之間,char佔一個位元組,也就是8個二進制位,但它表示的是有符號的類型,所以表示的范圍是-128~127,uchar表示無符號的類型,所以表示的范圍是0~255。
以上內容參考網路-char
G. c語言變數基本類型有哪些
c語言的變數有三種類型:char,int,float,double
其中char為字元類型的變數是八位的,最前一位作為符號位,後面七位作為數據位.它的存儲范圍在-128到127之間.
int整數類型的變數是16位的,最前一位為符號位,後面的15位作為數據位.它的存儲范圍在-215到215-1.也就是-32768到32767.它不包擴小數點以後的數,在一般編譯器中給int類型賦予帶有小數的數.編譯器會自動去掉小數點後面的數保留整數部分.
float為浮點數類型.首先要說明的是浮點數有兩部分組成,第一部分是指數,也就是多少次冪嘛.第二部分是由尾數組成也就是一個數科學表示發之後除去冪那部分剩下的(呵呵!!!)如1.33333.那麼c中的浮點數就有三部分.32位的浮點數第一位就是第一部分它決定數的符號.第二部分是八位的指數.第三部分是23位的尾數.所以浮點數具有6到7位的存儲精確度.范圍為3.4e-38到3.4e+38的數值.注:3.1415926e+7表示3.1415926.0.在給浮點數賦值的時候可以採用如下方法.123.45和1.2345e2是等價的.
double為雙精度型變數.c編譯器通常用64位來存儲雙精度性變數.它的精確度能夠達到14到15位.64位中第一位是符號位.後面的11位是指數位.最後的52位是尾數.它的范圍是-1.7e-308到1.7e+308.
類型標識符:unsigned,short,register,long和signed.
其中unsigned提示編譯器不要保留符號位,這樣可以擴大數據類型正數的范圍.比如unsigned int的范圍就變位0到65535了.
short類型用在有的編譯器不能給太大的存儲范圍,需要給一個比較低的溢出界限.比如有的編譯器就用的是32位來存儲int類型.用short來標識它可以保證int是用16位來標識的.
register表示一個變數可能會用得很頻繁.需要很快得存取速度所以指定的把它存到寄存器當中.
long表示不希望用16位來存儲整形變數時可以用long指定它用32位來存儲可以得到更大得表示範圍.
當然還有long unsigned int 這樣得類型.
用戶自定義數據類型
用戶可以使用typedef來自己定義自己需要得數據類型.如下例:
typedef unsigned long int myint;
myint num1;
這樣num1就是unsigned long int類型的了.
H. 變數的數據類型
首先,int所佔存儲空間的大小跟CPU數據匯流排寬度有關。也就是說,數據匯流排一個訪問周期能訪問的BIT位數是多少,int就佔用多少位元組。如果是32位機器,應該佔用4個位元組。如果是16位機器,佔用的是2位元組。如果是8位的,那麼int只佔用1個位元組。
至於表達什麼意思,int當然表示的是有符號整數了。這個應該不會不懂吧?最高BIT位如果為1表示負數,最高BIT位如果為0表示正數。
假如CPU數據匯流排為16根,那麼就是16位機器,一次只能訪問16bit。這樣你用計算器去試試,最高BIT位置為0,其他都置為1,它的最大正整數就是32767.
存儲在哪裡跟系統的空間設計有關,這個不好講。如果你做嵌入式的話,應該會比較了解。
我的機器int就是4個位元組,你可以用這條語句看看你的電腦int解釋為幾個位元組:printf(" sizeof=%d\r\n",
sizeof(int));。如果也是4,那麼取值范圍是-2^31至2^31,也就是-2147483648至-2147483648。你取個比這個大
的數再去測試溢出。
在大概2004年以前,市面上主流的電腦CPU都是16位設計的,所以那時教材多數說int是16位2個位元組的。但是2004年以後,32位機已經是主流的,所以當你運行程序的時候,int佔用的肯定是32位。你一定要用你的程序去驗證32768導致int溢出,得找台286/386的機器。或者你夠強,自己去寫個編譯器,強制將int置為16位也不是不可以。主流編譯器都是根據CPU位數來決定int佔用空間大小的。如果你用的是64位機,那麼int很可能會佔用8個位元組。不信你可以去試。