1樓:匿名使用者
字面值的字尾都是有標準的,
末尾的l指long, 用在整數上就是 long型,用在符點上就是 long double
末尾的u指unsigned, 浮點是沒有無符號型別的,所以3.14ul是錯誤的
末尾的f指float,不能用來修飾整數,只能用來修飾小數。
請注意字面的修飾還有字首的,意義會不同。具體用法可參見msdn中關於字面值的規定。
c++的0x 11新標準還支援建立自己的字尾符。
2樓:小浣熊快遞
研究過多用法沒有意義,按照標準來吧,有些東西涉及到細節問題沒有必要深究。3.14l為什麼可以我不清楚,也許沒有歧義就可以,至於ul我沒有記得有這個用法,我就記得一個數是不是有符號是在型別中確定的,比如 signed int 或者 unsigned int.
至於1024f 大概涉及到十六進位制, 再至於1024.0f,大概涉及到解析的優先度,這些東西弄清楚了沒有任何意義,除非你已經是大神了否則也弄不清楚。弄清楚稀奇古怪的東西並不重要,重要的是先把標準的用好了再說別的。
3樓:
1、3.14l 編譯器認為這是個 long double 型別,這是長精度浮點型
2、浮點型沒有無符號的
3、1024後面加f 編譯器無法識別認為是非法的字尾 說明f不能用在整型後面
4、1024.00 後面可以加f f是用來修飾浮點型 說明 浮點型是雙精度 還是單精度的 這個不能用來說明整型 1024.00 編譯器預設為雙精度的
c語言中整型,字元型,浮點型,和雙精度浮點型,詳解
整型,計算機中的一個基本的專業術語,指沒有小數部分的資料。整型可以用十進位制,十六進位制或八進位制符號指定,前面可以加上可選的符號 或者 包括整型常量和整型變數,整型變數又包括短整型 基本整型 長整型,它們都分為有符號和無符號兩種版本,是一種智慧的計算方式。字元型量包括字元常量和字元變數。字串常量由...
關於c語言浮點數問題,c語言關於浮點型資料範圍的問題
標準c語言支援的浮點數符合ieee格式,是二進位制浮點數,並不是一個位元組存放一個十進位制小數位的。關於ieee浮點數,可以參考這裡 至於這裡的輸出問題,如ls所說,是printf預設輸出問題。如果使用 f和 lf格式控制符輸出浮點數,預設輸出保留6位十進位制小數,自動四捨五入。用 nf可以控制輸出...
微控制器除法運算,微控制器中C語言如何實現浮點除法運算
如果直接用c程式寫,那就沒必要考慮除法的細節了,比如unsigned int a,b,c a 0x3456 b 0x1040 c a b 如果你想用匯編搞定,那沒辦法,老老實實的寫或者網上 書上 找這樣的程式,肯定能找到的。不過我可以說一下演算法,那就是相減,被除數連續不斷的減去除數,直到差小於除數...