• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users




(1) 2 »


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#12
資深會員
資深會員


查看用戶資訊
呼!原來浮點數轉型有不一定會成功的風險存在,不過我目前沒有用到帶符號的負數,只有正數的小數點而已,多謝 Master 大大的提醒,我會注意傳遞結果是否正確。

發表於: 2008/6/19 15:14
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#11
版主
版主


查看用戶資訊
Sorry, 左右寫反了,以更正原文了。謝謝指正。

發表於: 2008/6/19 14:55
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#10
資深會員
資深會員


查看用戶資訊
參照:

PSIR 寫到:
版主你好:<br />我想再確認一下,是將右邊的資料形態轉換成左邊資料型態後,傳給左邊的變數,這樣講對嗎?因為字面上的意思感覺好像反過來。


YES

發表於: 2008/6/19 14:49
不要問我哪裡來,我只是個流浪天涯的工程師
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#9
資深會員
資深會員


查看用戶資訊
但是在C語言裡面,並沒有保證轉型一定會成功或是正確。強制轉型只是沒有警告訊息,意思就是使用者要負擔轉型失敗的風險。

所以PSIR你只要確認轉型後資料沒錯就可以了。因為浮點數轉型不一定會成功。

以C30為例。
float fa = -23.56;

    
unsigned int ia;
    
int ib;

    
ia = (unsigned int)fa;  //失敗 ia = 0 ;沒有如預期的65513
    
ib = (int)fa;                 //成功 ib = -23

發表於: 2008/6/19 14:47
不要問我哪裡來,我只是個流浪天涯的工程師
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#8
資深會員
資深會員


查看用戶資訊
版主你好:
我想再確認一下,是將右邊的資料形態轉換成左邊資料型態後,傳給左邊的變數,這樣講對嗎?因為字面上的意思感覺好像反過來。

發表於: 2008/6/19 14:44
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#7
版主
版主


查看用戶資訊
也可以說是強迫型別轉化,因為兩變數的資料型態不一樣,所以無法直接傳送,所以要先將等號右邊的資料形態轉換成左邊接收的資料型態後才能獲得正確的值。要是沒有經過強迫型別轉換,傳過去的資料有可能會被截掉導致資料錯誤。

更正左右寫反了!

發表於: 2008/6/19 14:29
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#6
資深會員
資深會員


查看用戶資訊
Angle=(int)Result; <--改成這樣後,編譯結果就不再出現警告訊息了,而且運算結果也都正確,謝謝大大的指導^_^。

請問什麼叫做型態轉換?是不是專門用在處理不同資料型態之間的轉換運算,如果現在 Angle 變數是字元型態的話,是不是要改成這樣:

Angle=(char)Result;

感謝。

發表於: 2008/6/19 9:29
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#5
資深會員
資深會員


查看用戶資訊
Angle=(unsigned int)Result;

這樣才對吧?

你兩個變數都不是指標的宣告,怎麼會轉形成指標型態?

發表於: 2008/6/18 20:22
不要問我哪裡來,我只是個流浪天涯的工程師
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#4
資深會員
資深會員


查看用戶資訊
您好:
改成這樣寫後發現沒辦法編譯耶。
Angle=(*int)Result;

發表於: 2008/6/18 17:05
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 請問「missing newline」和「浮點數變數內容傳給整數變數」的警告訊息
#3
資深會員
資深會員


查看用戶資訊
你好:
試試型態轉換:
Result=18.22;
Angle=(*int)Result; //希望我沒搞錯
但不知是否為你所要的.

Thanks.

發表於: 2008/6/18 16:13
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------