读书人

指针赋值!解决方案

发布时间: 2013-01-05 15:20:39 作者: rapoo

指针赋值!!!急
char *pszPropertyValue;
需要给上面这个值赋值三个byte的值,每个值所传对应设备的内容。
byte1:设备ID(默认为1)
byte2:设备表对应的编号(默认为18)
byte3:执行的操作(0为关闭,1为开启)
现在想传char pszPropertyValue[]={'1','18','0'};(char pszPropertyValue[]={1,18,0};)
但是这样传设备收不到值。以上两种赋值都不行。。。
求教如何赋三个byte的值给一个参数。
[解决办法]
楼主知道
'1'-1
的结果是多少吗?
[解决办法]
sprintf
[解决办法]
char pszPropertyValue[]={1,18,0};
也不行?指针赋值!解决方案
[解决办法]

引用:
char pszPropertyValue[]={1,18,0};


这是没错的,如果还传不了,那应该是其他地方的问题吧
[解决办法]
楼主,指针只能传地址的
[解决办法]
给字符指针赋值试试
char *p[]={"12","5","67"};这种形式
[解决办法]
引用:
char *pszPropertyValue;
需要给上面这个值赋值三个byte的值,每个值所传对应设备的内容。
byte1:设备ID(默认为1)
byte2:设备表对应的编号(默认为18)
byte3:执行的操作(0为关闭,1为开启)
现在想传char pszPropertyValue[]={'1','18','0'};(char pszPropertyValue[]={1,18,0}……

给个上下文吧,你的数据是怎么传的?接收方是怎么处理的?
[解决办法]
做过小实验没有?比如这个:

#include <iostream>
using namespace std;

void main()
{
//char *pp ;
char pp[] = {1,18,0};
for (int i = 0;i<3;i++)
{
cout<<(int)pp[i]<<" "<<pp[i]<<endl;
}
}

我这里是没有问题的,不知道你那里怎么样。
[解决办法]
引用:
上面这个值传过去变成乱码了。。


是不是接收方直接按char类型(纯字符形式)而不是int类型操作的啊?

读书人网 >C++

热点推荐