新聞中心
C語言 強(qiáng)制類型轉(zhuǎn)換運(yùn)算符
可以利用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符將一個表達(dá)式轉(zhuǎn)換成所需類型。例如:
我們提供的服務(wù)有:網(wǎng)站制作、成都網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、光澤ssl等。為上千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的光澤網(wǎng)站制作公司
(double)a? ? ? ? ? ? ? ? (將a轉(zhuǎn)換成double類型)
(int) (x+y)? ? ? ? ? ? ? ? ?(將x+y的值轉(zhuǎn)換成int型)
(float)(5%3)? ? ? ? ? ? ? (將5%3的值轉(zhuǎn)換成float型)
其一般形式為
(類型名)(表達(dá)式)
注意,表達(dá)式應(yīng)該用括號括起來。如果寫成
(int)x+y
則只將x轉(zhuǎn)換成整型,然后與y相加
? ? 需要說明的是,在強(qiáng)制類型轉(zhuǎn)換時,得到一個所需類型的中間變量,而原來變量的類型未發(fā)生變化。例如:
? ? ? ? ? ? a=(int)x
如果已定義x為float類型變量,a為整型變量,進(jìn)行強(qiáng)制類型運(yùn)算(int)x后得到一個int類型的臨時值,它的值等于x的整數(shù)部分,把它賦給a,注意x的值和類型都未變化,仍為float型。該臨時值在賦值后就不再存在了。
? ? 從上可知,有兩種類型轉(zhuǎn)換,一種是在運(yùn)算時不必用戶干預(yù),系統(tǒng)自動進(jìn)行的類型轉(zhuǎn)換,如3+6.5。第2種是強(qiáng)制類型轉(zhuǎn)換。當(dāng)自動類型轉(zhuǎn)換不能實(shí)現(xiàn)目的時,可以用強(qiáng)制類型轉(zhuǎn)換。如%運(yùn)算符要求其兩側(cè)均為整型量,若x為float型,則x%3不合法,必須用(int)x%3,。強(qiáng)制類型轉(zhuǎn)換運(yùn)算符優(yōu)先于%運(yùn)算,因此先進(jìn)行(int)x的運(yùn)算,得到一個整型的中間變量,然后再對3求余。此外,在函數(shù)調(diào)用時,有時為了使實(shí)參與形參類型一致,可以用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符得到一個所需要類型的參數(shù)。
C語言函數(shù)分段 問題. 強(qiáng)制轉(zhuǎn)換.
試一下下面的程序怎么樣?
int main(void)
{
int aa;
double fx;
printf("Please input x: ");
scanf("%d", aa);
if (aa 0)
{
fx = -5.0 * aa + 27;
}
else if (aa == 0)
{
fx = 7909;
}
else
{
fx = 2.0 * aa - 1;
}
printf("\nF(%d) = %0.lf\n", aa, fx);
return 0;
}
c語言強(qiáng)制類型轉(zhuǎn)換
1、int a;int b;double c = (double) a;double c = (double) b;int a = (int) c;這就是一種強(qiáng)制轉(zhuǎn)變方法。
2、long int c;(int)c;如果C變量是長整型,那么之下的語句就是將長整型轉(zhuǎn)變成為整型的過程。
3、()內(nèi)是要轉(zhuǎn)變的類型,當(dāng)然相互之間的轉(zhuǎn)變也同時遵循可行性原則。
4、強(qiáng)制轉(zhuǎn)變同時也是一種函數(shù)的封裝,遵守一定的規(guī)則條件,當(dāng)然也可以自己構(gòu)造一個強(qiáng)制轉(zhuǎn)換函數(shù)。
5、還可以將兩個整數(shù)運(yùn)算表達(dá)式的結(jié)果,強(qiáng)制轉(zhuǎn)換為浮點(diǎn)型數(shù)據(jù)。
C語言強(qiáng)制類型轉(zhuǎn)換
你理解的很正確。兩個問題的答案都是:對。
開始val被定義成int,就是說val的地址(就是val)是整形數(shù)。但是一旦取出地址val,你可以對這個地址的內(nèi)容重新定義 (char *)就是告訴編譯器這個地址的指針內(nèi)容當(dāng)char的指針來讀。
這個可以看成是強(qiáng)制類型轉(zhuǎn)換,但不是標(biāo)準(zhǔn)的,標(biāo)準(zhǔn)的強(qiáng)制類型轉(zhuǎn)換是: (char) val 或者 char(val).
在32位的Windows操作系統(tǒng)中,int的數(shù)占用4個字節(jié)(byte),強(qiáng)制轉(zhuǎn)換成char后自動取最低一個字節(jié)(就是8位),這個是自動完成的,你就不用擔(dān)心了。不過因?yàn)閜ointer被定義成指向char的指針,它加以的時候(pointer++)僅僅加一個字節(jié)(8位)。
c語言中可以用強(qiáng)制類型轉(zhuǎn)換
強(qiáng)制類型轉(zhuǎn)換是把變量從一種類型轉(zhuǎn)換為另一種數(shù)據(jù)類型。
例如,如果您想存儲一個 long 類型的值到一個簡單的整型中,您需要把 long 類型強(qiáng)制轉(zhuǎn)換為 int 類型。您可以使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符來把值顯式地從一種類型轉(zhuǎn)換為另一種類型。
擴(kuò)展資料:
舉例說明
使用強(qiáng)制類型轉(zhuǎn)換運(yùn)算符把一個整數(shù)變量除以另一個整數(shù)變量,得到一個浮點(diǎn)數(shù):
#include stdio.hint main()
{
int sum = 17, count = 5;
double mean;
mean = (double) sum / count;
printf("Value of mean : %f\n", mean );
}
當(dāng)上面的代碼被編譯和執(zhí)行時,它會產(chǎn)生下列結(jié)果:
Value of mean : 3.400000
參考資料來源:百度百科-C語言
分享名稱:c語言可以強(qiáng)制轉(zhuǎn)換函數(shù)嘛,C語言強(qiáng)制轉(zhuǎn)換
網(wǎng)頁地址:http://www.dlmjj.cn/article/dscgsep.html