2017-09-18 47 views
-2

現在,我想在C 與鑄造型實現,但正如你所看到的圖像,有一定的警示作用「,從較小的整數類型‘字符’ 投以‘字符*’我不明白這一點,我無法實現這樣的類型? 我怎樣才能解決這個問題呢?如何解決使用較小類型投射?

#include <stdio.h> 
#include "main.h" 

typedef unsigned short  int uint16_t; 
char * Rxcommand; 


uint16_t DeQueue(void) 
{ 
    retVal = 0x88; 
    return retVal; 
} 


int main(void) 
{ 

char ch; 

ch = (char) DeQueue(); 
Rxcommand = ch; 


../main.c(403): error: a value of type "char" cannot be assigned to an entity of type "char *" 

所以我作爲代替以下。

Rxcommand = (char *) ch; 

然後我得到的消息是下面的圖片。

Warning image

+1

'&ch'會給你一個指針'ch' – vu1p3n0x

+1

也許你應該使用'字符Rxcommand;'而不是 –

回答

-1

在投射到指針之前,製作指針!

Rxcommand = (char *) &ch; 
+0

那麼你不需要投,當然。畢竟,「需要」演員經常意味着你的代碼被打破了。 –

相關問題