我在學習c語言的過程中,有乙個知識點不是很明白,但經過思考,好像是這麼回事。我們先看一張圖,如下:
可以在圖中看到橫向箭頭,書上的意思是:橫向向左的箭頭表示必定轉換,如char型必定轉換成int型,short型轉換成int型,float型轉換成double型。帶著疑問,敲了幾個例子,大家共享一下。
例1.
#include //標頭檔案
void main( )
執行結果如下:
可以發現結果是4個位元組,char型被自動轉成int型了,這就驗證了上圖所說,char型被計算機自動轉成了int型。
但你若要將值進行轉存一下,再輸出就能得到自己所需要的資料型別值。如下面的例子,如下:
例2.
#include //標頭檔案
void main( )
執行結果為:
結果中可以看到,對a取反後然後再賦給字元型b,這樣輸出b就是自己想要的值。
再給出乙個例子
#include
void main()
浮點型也是一樣
**如下:
#include
void main()
所以可以證明橫向箭頭的正確性。 C語言中的資料型別及其轉換詳解
1.c語言中的資料型別 c語言中的型別按其組成可以分為簡單型別和構造型別,按是否預定義了型別名字和值集可以分為基本型別和非基本型別,按是否加了型別限定符可以分為限定型別和非限定型別。ansi c99標準中型別定義的bnf語法如下圖。說明 1 define pointer int 2 pointer ...
C 語言中的資料型別
1.1基本資料型別 字元型 char 短整型 short int 整型 int 長整型 long int 單精度浮點型 float 雙精度浮點型 double 1.2復合資料型別 陣列,結構體。字元型 char a 1 1個位元組 短整型 short int 2個位元組 整型 int 4個位元組 長...
C語言中的資料型別
常量,表示一些固定的資料 1 整型常量 int 包括了所有的整數,比如6 27 109 256 10 0 289等 2 浮點型常量 float double 浮點型常量分為double和float兩種資料型別 u double 雙精度浮點型,其實就是小數。比如5.43 2.3 0.0等 注意,0.0...