结构体指针问题
本帖最后由 lin13a321 于 2013-8-14 16:28 编辑初学者求指点
定义一个结构体
typedef struct
{
unsigned char* way2;
unsigned char* Protocol2; //设置网络服务类型 0为TCP1为UDP
unsigned char* CS2; //设置C/S模式 0为客户端1为服务器端
unsigned char* ServerIP2; //设置服务器IP地址
unsigned char* Port_NUM2; //设置服务器端口
}Config_Server;//服务器设置
然后写了一个函数
intWIFI_Server(unsigned char* way,unsigned char* Protocol,unsigned char* CS,unsigned char* ServerIP,unsigned char* Port_NUM)
如果我要调用结构体中的unsigned char* way2 把它的地址值赋给 函数变量unsigned char* way 怎么搞
这样为什么不对:
Config_Server *Server;
way=Server->way2;
如果别人用这个结构体调用 并且给里面的变量赋值所赋的值是不是可以传递给intWIFI_Server()函数中的变量
你的Server结构体初始化了么? 在不在啊?是不是 你得定义一个unsigned char **way? 参数way传进去只是个副本,所以way=Server->way2; 退出函数后就相当于没执行过。
如果我要调用结构体中的unsigned char* way2 把它的地址值赋给 函数变量unsigned char* way 怎么搞
Config_Server *Server;
WIFI_Server(Server-> way2, ...); airwill 发表于 2013-8-15 11:48 static/image/common/back.gif
如果我要调用结构体中的unsigned char* way2 把它的地址值赋给 函数变量unsigned char* way 怎么搞
Conf ...
恩,这样我知道,但是我的意思是如果我把WIFI_Server(unsigned char* way,,..) 作为一个 接口函数;在调用该函数的时候,如何通过结构体 变量赋值来随意给WIFI_Server(unsigned char* way,,..)unsigned char* way赋值,比如WIFI_Server(unsigned char* way,,..) 里面有个数据发送,如果我定义一个字符串*P="AAAAA",想通过调用 WIFI_Server(unsigned char* way,,..) 把数据发出去然后我这样Config_Server *Server;Server-> way=p;再这样调用WIFI_Server(Server-> way,,....) 就能把字符串“AAAAA”发出去吗??貌似直接WIFI_Server(*p,,...) 是不是就行了那还定义个变量结构体干什么!! Config_Server *Server;Server-> way=p;再调用WIFI_Server(Server-> way,,....) 就能把字符串“AAAAA”发出去
正确.
不过我感觉应该有更简单的办法解决这个问题.
比如:WIFI_Server(p,,....)
是否满足你的要求, 得具体看你的程序处理了
页:
[1]