如何决定使用较小的类型进行投射?

时间:2017-09-18 01:51:31

标签: c

现在我尝试用C中的强制类型实现。 但正如你可以看到图像,有一些警告"施展给#char;'从较小的整数类型' char' 我无法理解这一点,我不能像这种类型那样实现吗? 我该如何解决这个问题?

#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 个答案:

答案 0 :(得分:-1)

在转换为指针之前,先制作指针!

Rxcommand = (char *) &ch;