Re: [問題] reinterpret_cast的問題
我非常好奇這種cast方式
測試了許多東西
遇到怪事
http://msdn.microsoft.com/en-us/library/e0w9f63b(VS.80).aspx
看了這個example 他是把void*轉成 unsigned int;
很好很強大..........
我依樣改寫成
================================================
int p=5566;
void *pp=&p;
double dd=reinterpret_cast<double>(pp);
無法由 'void *' 轉換為 'double'
OS:double太大了?我轉一個同大小的
================================================
void *pp=&p;
float dd=reinterpret_cast<float>(pp);
無法由 'void *' 轉換為 'float
OS:失敗....難道只能用unsigned char? 我用char試試看
================================================
int *pp=&p;
char dd=reinterpret_cast<char>(pp);
神奇 完全沒warning................
OS:好吧我測測看我最愛用的int
================================================
void *pp=&p;
int dd=reinterpret_cast<int>(pp);
指標值由 'void *' 指派至 'int' 時會遭截斷
以上.............我完全想不透為什麼會這樣 與同學討論也沒結果
而且對於reinterpret_cast更是一頭霧水
是否有強者版友能夠解釋這現象是為什麼呢???
非常感謝~~~謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.207.211
推
04/01 08:57, , 1F
04/01 08:57, 1F
→
04/01 08:57, , 2F
04/01 08:57, 2F
→
04/01 08:58, , 3F
04/01 08:58, 3F
→
04/01 08:58, , 4F
04/01 08:58, 4F
→
04/01 09:00, , 5F
04/01 09:00, 5F
→
04/01 09:00, , 6F
04/01 09:00, 6F
推
04/01 09:04, , 7F
04/01 09:04, 7F
推
04/01 09:08, , 8F
04/01 09:08, 8F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):