強制類型轉換是把變量從一種類型轉換為另一種數據類型。例如,如果您想存儲一個 long 類型的值到一個簡單的整型中,您需要把 long 類型強制轉換為 int 類型。您可以使用強制類型轉換運算符來把值顯式地從一種類型轉換為另一種類型,如下所示:
(type_name) expression
請看下面的實例,使用強制類型轉換運算符把一個整數變量除以另一個整數變量,得到一個浮點數:
#include
{ int sum = 17, count = 5;
double mean; mean = (double) sum / count;
printf("Value of mean : %fn", mean ); }
當上面的代碼被編譯和執行時,它會產生下列結果:
Value of mean : 3.400000
#include
{ int i = 17;
char c = 'c'; /* ascii 值是 99 */ int sum; sum = i + c;
printf("Value of sum : %dn", sum ); }
當上面的代碼被編譯和執行時,它會產生下列結果:
Value of sum : 116
常用的算術轉換不適用于賦值運算符、邏輯運算符 && 和 ||。讓我們看看下面的實例來理解這個概念:
#include
char c = 'c'; /* ascii 值是 99 */ float sum; sum = i + c;
printf("Value of sum : %fn", sum ); }
當上面的代碼被編譯和執行時,它會產生下列結果:
Value of sum : 116.000000
在這里,c 首先被轉換為整數,但是由于最后的值是 double 型的,所以會應用常用的算術轉換,編譯器會把 i 和 c 轉換為浮點型,并把它們相加得到一個浮點數。
審核編輯:黃飛
-
C語言
+關注
關注
180文章
7614瀏覽量
137702 -
編譯器
+關注
關注
1文章
1642瀏覽量
49283
原文標題:C語言中的強制類型轉換
文章出處:【微信號:單片機與嵌入式,微信公眾號:單片機與嵌入式】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
C語言中強制類型轉化
![<b class='flag-5'>C</b><b class='flag-5'>語言</b>中<b class='flag-5'>強制</b><b class='flag-5'>類型</b>轉化](https://file.elecfans.com/web2/M00/67/CA/poYBAGMZ4cKALyshAABCAJTB-Cs026.png)
強制類型轉換問題
C語言指針必須要進行強制類型轉換?
C語言中int型強制類型轉換成short型的溢出問題怎么解決?
C程序的運行環境和C語言的數據類型
分析C語言到底需要掌握哪些知識以及怎樣去掌握
強制類型轉換是把變量從一種類型轉換為另一種數據類型
關于C語言中的強制類型轉換
![關于<b class='flag-5'>C</b><b class='flag-5'>語言</b>中的<b class='flag-5'>強制</b><b class='flag-5'>類型</b><b class='flag-5'>轉換</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論