我在MQTT应用程序的工作,并为int当我收到来自MQTT经纪人有效载荷的信息,并试图将其从void *的是MESSAGE->的有效载荷为int的转换的从虚空转换* C++中
signed int var_1=*((int*) message->payload);
,而不是将其转换为它是将其转换为另一个数,看到这个我使用下面的代码:
printf("Message:%s\n",message->payload);
printf("Message:%i\n",var_1);
其中显示:
Message:-58
Message:3683629
我也想过有效载荷是一个字符串,但如果我用Stoi旅馆功能它给我的错误:
can not convert from ´void*´ to ´int´ with stoi function.
你到底在问什么?无论如何,'message-> payload'应该是什么?代表“int”或ascii字符串的缓冲区? –
真正的问题是,消息是如何发送的?发件人做了一些从他的数据中创建一个有效载荷。你需要扭转这个过程。 –
'而不是将其转换为它将其转换为另一个的数字'您期望的数字是多少? – user2079303