[英]Compiler warning: Conversion of integer to pointer at assignment
我正在執行以下操作:
static uint32 myReadValue;
static uint32 myNewValue;
DoRead(10, &myReadValue);
myNewValue = (uint32)(&myReadValue) | (3 << 8);
借此
void DoRead(SomeEnumType, void * Ptr)
{
// some functionality
}
編譯器給了我消息:
"conversion of integer to pointer at assignment" on the assignment of "myNewValue"
我不知道我在那里做錯了什么。 任何想法?
(uint32)(&myReadValue)
是指向myReadValue
的指針到uint32
的轉換,而不是相反,並且這種轉換不會在分配時發生……有些事情你沒有告訴我們。 發布產生問題的可編譯代碼。
無論如何,演員表都沒用,您可能應該改用它:
myNewValue = myReadValue | (3 << 8);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.