精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

【揭秘】C語言類型轉換時發生了什么?

開發 后端
在C語言中,數據類型指的是用于聲明不同類型的變量或函數的一個廣泛的系統,我們常用的算術類型包括兩種類型:整數類型和浮點類型。那么相互之間具體是怎么轉化的呢?來看看吧。

在C語言中,數據類型指的是用于聲明不同類型的變量或函數的一個廣泛的系統,我們常用的算術類型包括兩種類型:整數類型和浮點類型。那么相互之間具體是怎么轉化的呢?

了解一下類型轉換

不同數據類型的存儲大小和值范圍是不一樣的,程序在初始化的時候就已經設定了,例如: 

  1. int a = 9 
  2. float b = 8.5; 

a,b占的字節大小不一樣,這個我們應該都知道,在C語言中一個表達式允許不同類型的數據進行運算,例如: 

  1. int a = 9 
  2. float b = 8.5,c;  
  3. c = a + b; 

因為計算機硬件在進行算術操作時,要求各操作數的類型具有相同的存儲位數以及一樣的存儲方式,所以就出現了類型轉換。

對于某些類型的轉換,編譯器可以隱式地自動進行,這種轉換稱為自動類型轉換;

而有些類型轉換需要程序員顯式指明,那么通常把這種轉換稱為強制類型轉換。

自動類型轉換

自動轉換是在源類型和目標類型兼容以及目標類型廣于源類型時發生一個類型到另一類的轉換。我們先來看一段代碼 

  1. //vs2019  
  2. //來源:技術讓夢想更偉大  
  3. //作者:李肖遙  
  4. #include <stdio.h>  
  5. int main()  
  6.  
  7.  //定義一個整型指針變量pPoint  
  8.  int* pPoint;  
  9.  //定義基本的數據的類型  
  10.  char c;  
  11.  short s;  
  12.  int i;  
  13.  long l;  
  14.  float f;  
  15.  double d;  
  16.  //將整型浮點型數據賦值給指針類型  
  17.  pPoint = c 
  18.  pPoint = s 
  19.  pPoint = i;  
  20.  pPoint = l 
  21.  pPoint = f 
  22.  pPoint = d 
  23.  return 0;  

由于指針變量和整型、浮點這些數據型的類型是不能相互賦值的,編譯報錯輸出:

那么我們把同類型數據類型進行運算后賦值呢? 

  1. //vs2019  
  2. //來源:技術讓夢想更偉大  
  3. //作者:李肖遙  
  4. #include <stdio.h>  
  5. int main()  
  6.  
  7.  //定義一個整型指針變量pPoint  
  8.  int* pPoint;  
  9.  //定義基本的數據的類型  
  10.  char c;  
  11.  short s;  
  12.  int i;  
  13.  long l;  
  14.  float f;  
  15.  double d;  
  16.  //將整型浮點型數據運算之后賦值給指針類型  
  17.  pPoint = c + c;  
  18.  pPoint = s + s;  
  19.  pPoint = i + i;  
  20.  pPoint = l + l;  
  21.  pPoint = f + f;  
  22.  pPoint = d + d;  
  23.  return 0;  
  •  char同類型運算,結果是一個int類型。
  •  short同類型運算,結果是一個int類型。
  •  int同類型運算,結果是一個int類型。
  •  long同類型運算,結果是一個long類型。
  •  float同類型運算,結果是一個float類型。
  •  double同類型運算,結果是一個double類型。

如下圖所示:

同類型運算中:

  •  整型:比int小的,都會轉換成int,比int大的不變。
  •  浮點:不變。

那么我們把不同類型數據類型進行運算后賦值呢? 

  1. //vs2019  
  2. //來源:技術讓夢想更偉大  
  3. //作者:李肖遙  
  4. #include <stdio.h>  
  5. int main()  
  6.  
  7.  //定義一個整型指針變量pPoint  
  8.  int* pPoint; 
  9.  //定義基本的數據的類型  
  10.  char c;  
  11.  short s;  
  12.  int i;  
  13.  long l;  
  14.  float f;  
  15.  double d;  
  16.  //將整型浮點型數據混合運算賦值給指針類型  
  17.  pPoint = c + s;  // char + short = int  
  18.  pPoint = c + i;  // char + intint = int  
  19.  pPoint = c + l;  // char + long = int  
  20.  pPoint = c + f;  // char + float = long  
  21.  pPoint = c + d;  // char + double = float  
  22.  return 0;  
  •  char類型與short類型運算,結果是一個int類型。
  •  char類型與int類型運算,結果是一個int類型。
  •  char類型與long類型運算,結果是一個long類型。
  •  char類型與float類型運算,結果是一個float類型。
  •  char類型與double類型運算,結果是一個double類型。

結果如下圖所示:

 

可以得出在不同類型運算中:

  •  如果兩邊均比int小或等于int,那么結果為int。
  •  如果兩邊有比int大的,那么結果為比int大的類型。

我們得到結論如圖:

  •  整型類型級別從低到高依次為:

int -> unsigned int -> long -> unsigned long -> long long -> unsigned long long

  •  浮點型級別從低到高依次為:

float -> double

自動轉換規則:

  •  圖中橫向箭頭表示必須的轉換,如兩個float型數參加運算,雖然它們類型相同,但仍要先轉成double型再進行運算,結果亦為double型。
  •  圖中縱向箭頭表示當運算符兩邊的運算數為不同類型時的轉換,如一個long 型數據與一個int型數據一起運算,需要先將int型數據轉換為long型, 然后兩者再進行運算,結果為long型。
  •  當較高類型的數據轉換為較低類型時,則可能有些數據丟失。
  •  當較低類型的數據轉換為較高類型時,一般只是形式上有所改變, 而不影響數據的實質內容。
  •  所有這些轉換都是由系統自動進行的,使用時你只需從中了解結果的類型即可。

強制類型轉換

強制類型轉換是通過類型轉換運算來實現的。其一般形式為: 

  1. (類型說明符) (表達式)  

其作用就是把表達式的運算結果強制轉換成類型說明符所表示的類型的值。 

  1. //vs2019  
  2. //來源:技術讓夢想更偉大  
  3. //作者:李肖遙  
  4. #include<stdio.h>  
  5. #include<string.h>  
  6. int main()  
  7.  
  8.     float f,x=1.3,y=1.4;  
  9.     int i = 4,a,b;  
  10.     a = x + y;  
  11.     b = (int)(x+y);  
  12.     f = 10/i;  
  13.     printf("a=%d,b=%d,f=%f,x=%f,y=%f\n",a,b,f,x,y);  

運行結果如下:

我們從中可以看到,雖然x,y變強制轉換int型,但是最后輸出的值不變,強制類型轉換沒有影響x和y變量原本的類型。而上圖警告已經說明了一切。

注意:在C語言中,對一個變量賦值的時候,這個變量初始定義的類型包含了兩層含義:

  1.  這個數據類型表示的內存空間的大小。
  2.  編譯器把設定的數值放到這個內存空間,是數據類型的存儲方式解析后存進去的。

總結強調一點

進行強制類型轉換后,內存空間里面的內容是不會發生改變的,改變的是運算時的臨時數據對象的類型,是你去讀取這個內存空間時的解析方法。所以,一定要對這個數據類型的內存空間和解析方式有一個清晰的認知。 

 

責任編輯:龐桂玉 來源: C語言與C++編程
相關推薦

2021-11-23 23:31:43

C語言數據類型系統

2019-11-12 14:41:41

Redis程序員Linux

2021-01-18 08:23:23

內存時底層CPU

2023-03-31 08:12:30

操作系統nanosleep信號

2021-06-30 06:02:38

MySQL SQL 語句數據庫

2025-07-28 06:32:12

Gogo func()

2020-08-17 12:47:07

Mozilla裁員瀏覽器

2019-08-26 09:35:25

命令ping抓包

2010-02-07 09:00:29

AndroidLinux Kerne

2021-04-11 10:40:16

Git軟件開發

2023-08-29 16:26:20

Linux命令行

2015-07-03 09:27:43

網絡閏秒

2022-06-03 08:12:52

InnoDB插入MySQL

2019-09-16 17:16:29

Hadoop數據湖數據結構

2021-12-16 15:58:48

Linux內存微軟

2020-09-01 11:40:01

HTTPJavaTCP

2017-09-06 16:20:51

2022-05-31 13:58:09

MySQL查詢語句

2022-05-26 23:36:36

SQLMySQL數據

2023-11-02 08:00:00

ClickHouse數據庫
點贊
收藏

51CTO技術棧公眾號

久久久久黄色| 99热这里只有精品1| jazzjazz国产精品麻豆| 精品国产鲁一鲁一区二区张丽| 7799精品视频| 国产一区在线免费| 日韩手机在线视频| 999国产精品| 欧美日韩在线影院| 亚洲在线欧美| 四季av日韩精品一区| 亚洲一区国产一区| 久久精品小视频| 中文在线永久免费观看| 天然素人一区二区视频| 亚洲欧美另类久久久精品2019| 国风产精品一区二区| 劲爆欧美第一页| 天堂一区二区三区四区| 久久综合99re88久久爱| 欧美在线观看视频| 最新一区二区三区| 国产欧美日韩视频在线| 久久久久久久9999| 日韩精品导航| 91精品在线免费观看| 欧美变态另类刺激| 超碰个人在线| 99精品欧美一区| 亚洲特黄一级片| 国产成人亚洲欧美| 一级片视频播放| 免费精品视频| 久久久久久久久亚洲| 日本 欧美 国产| 加勒比久久综合| 亚洲国产欧美在线成人app| 邪恶网站在线观看| 日韩精品专区| 岛国av在线不卡| 成人激情视频网| 69成人免费视频| 极品裸体白嫩激情啪啪国产精品| 日韩最新中文字幕电影免费看| 亚洲av网址在线| 国产精品一线| 亚洲成人精品视频在线观看| 国产麻豆剧传媒精品国产| aa亚洲一区一区三区| 欧美体内she精视频| www日韩视频| 蜜桃精品在线| 国产精品色在线观看| 久久免费一区| 天堂av在线资源| 久久久久国产精品午夜一区| 午夜精品蜜臀一区二区三区免费| 手机av免费看| 神马香蕉久久| 亚洲男女自偷自拍图片另类| 亚洲综合网在线观看| 亚洲永久精品唐人导航网址| 日韩精品在线观看一区| 黄瓜视频污在线观看| 久久不见久久见中文字幕免费| 亚洲欧美日韩在线一区| av网在线播放| 祥仔av免费一区二区三区四区| 欧美视频精品在线| 日韩在线一区视频| 日韩高清在线观看一区二区| 精品精品国产高清a毛片牛牛| 日本精品免费在线观看| 在线日韩影院| 欧美日韩一区三区四区| 国产大片一区二区三区| 午夜久久av| 日韩激情av在线免费观看| v8888av| 国产一区二区三区日韩精品| 最好看的2019的中文字幕视频| 国产真实乱在线更新| 午夜天堂精品久久久久| 亚洲欧美综合v| 亚洲精品乱码久久久久久9色| 一区二区三区自拍视频| 欧美性极品少妇| 九九九九九伊人| 国产66精品| 亚洲人成网站999久久久综合| 91ts人妖另类精品系列| 欧美日韩三级| 欧洲亚洲免费视频| 国产乱色精品成人免费视频 | 国产精品96久久久久久| 亚洲一区二区色| 不卡一区在线观看| 午夜精品一区二区三区四区| 制服丝袜在线播放| 久久精品免费在线观看| 椎名由奈jux491在线播放| 亚洲 欧美 激情 另类| 精品一区二区三区香蕉蜜桃| 欧美在线观看日本一区| 国产精品一区二区人人爽| 99久久久免费精品国产一区二区| 翔田千里亚洲一二三区| 国内老司机av在线| 欧美日韩一区二区在线视频| 亚洲天堂美女视频| 香蕉国产精品| 日韩av免费看| 欧美一级淫片免费视频黄| 精品制服美女丁香| 欧美精品久久久| av片在线观看网站| 91国偷自产一区二区三区成为亚洲经典 | 91亚洲精品一区二区| www.色婷婷.com| 久久久激情视频| 亚洲爆乳无码精品aaa片蜜桃| 成人激情电影在线看| 欧美国产乱子伦| 97中文字幕在线| 亚洲三级在线| 精品视频在线播放| 国产免费嫩草影院| 亚洲精选国产| 91精品久久久久久久久久入口| 婷婷开心激情网| 亚洲码国产岛国毛片在线| 自慰无码一区二区三区| 成人午夜sm精品久久久久久久| 日韩精品中文字幕在线播放| 国产亚洲欧美精品久久久久久| 激情五月激情综合网| 先锋影音日韩| 日本精品另类| 国产午夜精品一区二区三区| 国产精品老女人| 不卡区在线中文字幕| www.av蜜桃| 超碰成人在线免费| 欧美精品成人91久久久久久久| a天堂视频在线| 亚洲精品成人精品456| 自拍一级黄色片| 欧美+日本+国产+在线a∨观看| 成人有码在线播放| 国产视频一区二区| 一区在线中文字幕| 特级黄色录像片| 97精品国产99久久久久久免费| 亚洲视频网站在线观看| 黄色av网站免费观看| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲午夜激情视频| 国产精品视频在线看| 99视频精品免费| 日韩在线欧美| 91热精品视频| 黄视频在线免费看| 日韩大陆欧美高清视频区| 国产小视频在线观看免费| 高清不卡一区二区| av7777777| 欧美日韩播放| 国产中文字幕亚洲| 亚洲av综合色区无码一区爱av | 三年中国中文在线观看免费播放| 精品国产亚洲一区二区三区| 欧美黄色www| 午夜视频1000| 欧美专区日韩专区| 国产成人自拍网站| 不卡视频一二三四| 亚洲视频在线a| 68国产成人综合久久精品| 成人一区二区在线| 久久人体大尺度| 色婷婷**av毛片一区| www.蜜臀av| 黑人狂躁日本妞一区二区三区| 中文字幕第24页| 激情欧美亚洲| 久久偷看各类wc女厕嘘嘘偷窃 | 91久久久在线| 97人人在线视频| 中文字幕精品在线| 国产成人a人亚洲精品无码| 亚洲国产cao| 精品手机在线视频| 成人动漫视频在线| 欧美午夜aaaaaa免费视频| 欧美福利专区| 日韩动漫在线观看| av日韩电影| 久久精品国产欧美激情| 色呦呦中文字幕| 欧美中文字幕久久| 久久久久成人精品无码| 日本一区二区三级电影在线观看 | 首页欧美精品中文字幕| 国产女主播一区二区| 日韩福利一区| 欧美精品久久久久久久久久| 九色视频网站在线观看| 91精品国产综合久久蜜臀| wwwwww国产| 亚洲欧美日韩国产成人精品影院| 国产中文字幕一区二区| 国产一二三精品| 成人一区二区三| 狠狠88综合久久久久综合网| 亚洲高清视频在线观看| 全球av集中精品导航福利| 国产日韩精品综合网站| 欧美aa在线观看| 九色91av视频| av在线电影网| 亚洲欧洲中文天堂| 韩国av免费在线观看| 欧美视频一区二区三区四区 | 欧美亚洲高清| 日本精品视频在线观看| a级在线观看| 亚洲天堂av在线免费| 日本高清视频在线| 91精品久久久久久久久99蜜臂| 老熟妇一区二区三区啪啪| 天天综合网天天综合色| 欧美日韩三级在线观看| 亚洲欧美偷拍卡通变态| 91免费在线看片| 久久久久国产成人精品亚洲午夜| 欧美做受高潮中文字幕| 国产精品一区二区三区四区 | 国产91精品一区二区| 99九九精品视频| 麻豆精品视频在线观看视频| 日本爱爱免费视频| 日韩精品电影在线| 日韩欧美xxxx| 亚洲欧美清纯在线制服| 国产91美女视频| 在线观看一区视频| 免费看欧美黑人毛片| 欧美午夜精品| 黄色片免费在线观看视频| 在线精品国产| wwwwww欧美| 在线播放精品| 免费看的黄色大片| 另类天堂av| 情侣黄网站免费看| 日韩影院精彩在线| 黄色小视频免费网站| 在线精品视频在线观看高清| 午夜啪啪福利视频| 中文一区一区三区免费在线观看| 亚洲一区三区视频在线观看| 欧美wwwww| 亚洲日本精品一区| 亚洲91视频| 久久综合久久网| 国产九九精品| 日日噜噜噜噜久久久精品毛片| 麻豆91精品视频| 99精品视频国产| 成人亚洲精品久久久久软件| 99久久免费看精品国产一区| 久久久久久久久蜜桃| jizz18女人高潮| 亚洲欧洲中文日韩久久av乱码| 久久免费小视频| 午夜日韩在线电影| 国产乱码在线观看| 91精品国产麻豆国产自产在线| 亚洲国产中文字幕在线| 日韩毛片中文字幕| 久操视频在线| 97免费在线视频| 精品国产欧美日韩一区二区三区| 亚洲一区二区免费| 国产乱人伦精品一区| 久久精品第九区免费观看| japanese国产精品| 在线观看17c| 香蕉视频成人在线观看| www.欧美激情.com| 不卡视频一二三| 日本二区三区视频| 亚洲国产成人av好男人在线观看| 五月婷婷激情视频| 日韩三级中文字幕| 成人av一区| 欧美激情久久久久| 成人精品一区二区三区电影| 国产精品二区在线| re久久精品视频| 男人c女人视频| 蜜臀va亚洲va欧美va天堂| 日本久久久久久久久久| 国产人成亚洲第一网站在线播放 | 亚洲已满18点击进入久久| 加勒比一区二区| 亚洲私人黄色宅男| 五月婷婷亚洲综合| 91精品国产欧美一区二区成人| 亚洲 国产 欧美 日韩| 久久综合久久美利坚合众国| 一区二区三区短视频| 亚洲淫片在线视频| 精品国产精品国产偷麻豆| 国产精品又粗又长| 狠狠色丁香久久婷婷综| 色哟哟精品观看| 亚洲国产精品一区二区www在线| 在线免费看91| 日韩精品中文字幕久久臀| 污网站在线免费看| 国产乱人伦真实精品视频| 亚洲理论电影| 日韩精品一区在线视频| 国产乱人伦精品一区二区在线观看 | 欧洲黄色一区| 国产欧美中文字幕| 国产精品探花在线观看| 国产精品宾馆在线精品酒店| 成人免费视频视频| 杨钰莹一级淫片aaaaaa播放| 欧美亚洲一区二区在线| 好吊视频一区二区三区| 北条麻妃在线一区二区| 日韩成人亚洲| 久久久婷婷一区二区三区不卡| 国产一区日韩一区| 日本中文字幕影院| 中文字幕视频一区| 在线观看毛片视频| 中文字幕日韩在线观看| 成人做爰视频www| 色就是色欧美| 人人爽香蕉精品| 亚洲码无人客一区二区三区| 欧美视频在线观看免费| 视频国产在线观看| 91精品国产精品| 好吊妞国产欧美日韩免费观看网站| 99热这里只有精品免费| 国产剧情一区二区三区| 加勒比婷婷色综合久久| 欧美一区二区三区爱爱| caoporn免费在线| 99re在线播放| 亚洲激精日韩激精欧美精品| 一本色道久久hezyo无码| 亚洲午夜av在线| 五月婷婷六月色| 欧美在线一区二区视频| 久9久9色综合| 婷婷六月天在线| 国产精品人人做人人爽人人添| 一级片一区二区三区| 久久久国产一区| a看欧美黄色女同性恋| 欧美a v在线播放| 久久久久久麻豆| 亚洲一区中文字幕在线| 裸体女人亚洲精品一区| 国产调教精品| 免费观看精品视频| 欧美国产97人人爽人人喊| 91成人在线免费| 欧美—级高清免费播放| 欧洲亚洲一区二区三区| 日本激情视频在线| 亚洲三级电影网站| 日韩性xxxx| 国产精品久久久91| 欧美va天堂| 波多野结衣办公室33分钟| 欧美日本韩国一区| 成人女同在线观看| 日本免费高清不卡| 国产精品一区在线观看你懂的| 国产精品30p| 欧美性生活影院| 自拍亚洲图区| 欧美日韩精品免费观看| 激情图片小说一区| 久久久精品免费看| 色婷婷综合久久久久| 久久狠狠久久| 国产色视频在线播放| 亚洲不卡av一区二区三区| 91caoporn在线| 国产精品一区二区三区在线观| 青青草91视频| 国产一级黄色av|