找回密碼 或 安全提問
 註冊
|註冊|登錄

伊莉討論區

搜索
伊莉需要你的贊助和支持儲值後自動升級用戶組安全提問(回答) 和 永久尊貴會員 事宜
無碼海賊王無修ge 無碼259luxu銀魂幼女
jul 868dass 365mg家庭教師盛世春davichilinda

休閒聊天興趣交流學術文化旅遊交流飲食交流家庭事務PC GAMETV GAME
熱門線上其他線上感情感性寵物交流家族門派動漫交流貼圖分享BL/GL
音樂世界影視娛樂女性頻道潮流資訊BT下載區GB下載區下載分享短片
電腦資訊數碼產品手機交流交易廣場網站事務長篇小說體育運動時事經濟
上班一族博彩娛樂

【高清繁中】✡ 霹靂

(4月新番)[繁]關於我

(4月新番)[繁]魔法科

關於我轉生變成史萊姆

❖四月新番【簡】無名

[簡]被稱為廢物的原英
C & C++ 語言C# 語言Visual Basic 語言PHP 語言JAVA 語言
查看: 4169|回復: 6
打印上一主題下一主題

[問題]vb.net 兩個有小數點數值相乘,為何會變整數?[複製鏈接]

帖子
39
積分
0 點
潛水值
9471 米
跳轉到指定樓層
樓主
發表於 2014-9-11 11:27 PM|只看該作者|倒序瀏覽
如果發覺自己無法使用一些功能或出現問題,請按重新整理一次,並待所有網頁內容完全載入後5秒才進行操作。
本帖最後由 terrypen 於 2014-9-11 11:31 PM 編輯

請教各位先進~我在datagridview做數值相乘運算,為什麼有小數點的數值相乘,出來會變整數,我看了MSDN還是一頭霧水,可否為小弟解惑一下,該如何進行運算才好~~謝謝!
  1. Dim iLong as Decimal
  2. Dim iWide as Decimal
  3. Dim iQuantity as Decimal

  4.   iLong = CInt(DataGridView1.Rows(e.RowIndex).Cells("dgvLong").Value) '例如:iLong = 10.2
複製代碼
  1. iWide = CInt(DataGridView1.Rows(e.RowIndex).Cells("dgvWide").Value) '例如:iWide = 5.4

  2. iQuantity = iLong * iWide
  3.             DataGridView1.Rows(e.RowIndex).Cells("dgvQuantity").Value = iQuantity.ToString '值應該 = 55.08, 結果為整數
複製代碼

...
瀏覽完整內容,請先 註冊登入會員
分享分享0收藏收藏0支持支持0

使用道具檢舉

Rank: 2Rank: 2

帖子
241
積分
299 點
潛水值
22810 米
頭香
發表於 2014-9-12 09:35 AM|只看該作者
若瀏覽伊莉的時侯發生問題或不正常情況,請使用Internet Explorer(I.E)。
因為
iLong = CInt(...)
iWide = CInt(...)


這個追蹤一下流程跟變數內容, 一下子就有結果了吧!?

下載: 訪客無法瀏覽下載點,請先 註冊登入會員

  CInt
  Integer 資料類型 (Visual Basic)
  -2,147,483,648 至 2,147,483,647;小數部分會捨入。1...
瀏覽完整內容,請先 註冊登入會員
所有積分大於負-100的壞孩子,將可獲得重新機會成為懲罰生,權限跟幼兒生一樣。

使用道具檢舉

pitrtw 該用戶已被刪除
3
發表於 2014-9-12 09:53 AM|只看該作者
成為伊莉的版主,你將獲得更高級和無限的權限。把你感興趣的版面一步步地發展和豐盛,那種滿足感等著你來嚐嚐喔。
CInt  --->  Int
  1. iLong = Int(DataGridView1.Rows(e.RowIndex).Cells("dgvLong").Value)
  2. iWide = Int(DataGridView1.Rows(e.RowIndex).Cells("dgvWide").Value)
複製代碼

使用道具檢舉

帖子
39
積分
0 點
潛水值
9471 米
4
發表於 2014-9-12 07:20 PM|只看該作者
謝謝各位先進的解說~~我瞭解了~~我再仔細研究一下~~謝謝^^
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。

使用道具檢舉

帖子
372
積分
21 點
潛水值
5911 米
5
發表於 2014-9-13 07:43 PM|只看該作者
因為是承接的變數定義的問題,INT 是整數,還有你的顯示的FORMAT也要做個定義哦!





如果發覺自己無法使用一些功能或出現問題,請按重新整理一次,並待所有網頁內容完全載入後5秒才進行操作。

使用道具檢舉

Rank: 2Rank: 2

帖子
123
積分
496 點
潛水值
11039 米
6
發表於 2014-9-14 01:49 AM|只看該作者
如果瀏覽伊莉時速度太慢或無法連接,可以使用其他分流瀏覽伊莉,www01.eyny.com(02,03)。
  1. Dim iLong as Decimal
  2. Dim iWide as Decimal
  3. Dim iQuantity as Decimal

  4.   iLong = CInt(DataGridView1.Rows(e.RowIndex).Cells("dgvLong").Value) '例如:iLong = 10.2
複製代碼
把中斷點設定在iLong,debug執行到這一步,你看一下iLong這個變數
你用CInt去轉整數了,所以10.2會變成10
把CInt拿掉,你再從中斷去看,iLong就是10.2了

變數iWide,也是以此類推


...
瀏覽完整內容,請先 註冊登入會員

使用道具檢舉

帖子
39
積分
0 點
潛水值
9471 米
7
發表於 2014-9-23 08:57 PM|只看該作者
回覆中加入附件並不會使你增加積分,請使用主題方式發佈附件。

使用道具檢舉

您需要登錄後才可以回帖 登錄 | 註冊

Powered by Discuz!

© Comsenz Inc.

重要聲明:本討論區是以即時上載留言的方式運作,對所有留言的真實性、完整性及立場等,不負任何法律責任。而一切留言之言論只代表留言者個人意見,並非本網站之立場,用戶不應信賴內容,並應自行判斷內容之真實性。於有關情形下,用戶應尋求專業意見(如涉及醫療、法律或投資等問題)。 由於本討論區受到「即時上載留言」運作方式所規限,故不能完全監察所有留言,若讀者發現有留言出現問題,請聯絡我們。有權刪除任何留言及拒絕任何人士上載留言,同時亦有不刪除留言的權利。切勿上傳和撰寫 侵犯版權(未經授權)、粗言穢語、誹謗、渲染色情暴力或人身攻擊的言論,敬請自律。本網站保留一切法律權利。
回頂部