[問題] 型別轉換的用法
請教書本的練習題
將以下的轉型以具名的轉型法表示
int ival; double dval;
const string *ps; char* pc;
void* pv;
a. pv = (void*)ps; b. ival = int(*pc);
c. pv = &dval; d. pc = (char*)pv;
我自己的答案是
a. pv = static_cast<void*> (const_cast<string*> (ps));
b. ival = static_cast<int> (*pc);
c. pv = static_cast<void*> (&dval);
d. pc = static_cast<char*> (pv);
c的部分compiler能過, 但是不太懂其中的轉換
&dval是個address, pv = &dval 隱含有型別轉換嗎?
compiler能過是否表示能將 &dval視為 double* ?
煩請幫我解惑, 謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 210.69.128.66
推
09/02 17:22, , 1F
09/02 17:22, 1F
→
09/02 17:23, , 2F
09/02 17:23, 2F
推
09/03 14:52, , 3F
09/03 14:52, 3F
→
09/03 14:53, , 4F
09/03 14:53, 4F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章