急求强制转换

SCAUniaodan 2007-12-13 11:55:10
char buf[1024];

struct rip
{
char rip_cmd; /* RIP command */
char rip_vers; /* RIP_VERSION, above */
short rip_mbz; /* must be zero */
};

rip *rp;


现在怎样使rp指针指向buf


谢谢!
...全文
152 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
C334745710 2007-12-15
  • 打赏
  • 举报
回复
5L好像在VS2005里也不行吧?
提示要用什么reinterpret_cast.....
SCAUniaodan 2007-12-15
  • 打赏
  • 举报
回复
//发送端程序




#include <stdio.h>
#include <stdlib.h>

#include <winsock.h>
#pragma comment(lib, "wsock32.lib")


int main(int argc, char* argv[])
{
WSADATA wsaData; //指向WinSocket信息结构的指针
SOCKET sockListener;
SOCKADDR_IN sin,saUdpServ;
BOOL fBroadcast = TRUE;
char sendBuff[1024];
int nSize;
int ncount=0;
if(WSAStartup(MAKEWORD( 1, 1 ), &wsaData )!=0)//进行WinSocket的初始化
{
printf("Can't initiates windows socket!Program stop.\n");//初始化失败返回-1
return -1;
}
sockListener=socket(AF_INET,SOCK_DGRAM,0);
setsockopt ( sockListener,SOL_SOCKET,SO_BROADCAST,



(CHAR *)&fBroadcast,sizeof ( BOOL ));
sin.sin_family = AF_INET;
sin.sin_port = htons(0);
sin.sin_addr.s_addr = htonl(INADDR_ANY);
if(bind( sockListener, (SOCKADDR *)&sin, sizeof(sin))!=0)
{
printf("Can't bind socket to local port!Program stop.\n");//初始化失败返回-1
return -1;
}
saUdpServ.sin_family = AF_INET;
saUdpServ.sin_addr.s_addr = htonl (INADDR_BROADCAST);
saUdpServ.sin_port = htons (7001);//发送用的端口,可以根据需要更改
nSize = sizeof (SOCKADDR_IN);
while(1)
{
sprintf(sendBuff,"Message %d",ncount++);
sendto ( sockListener,sendBuff,
lstrlen (sendBuff),
0,
(SOCKADDR *) &saUdpServ,
sizeof ( SOCKADDR_IN ));
printf("%s\n",sendBuff);
}
return 0;
}
zhangxs_3 2007-12-15
  • 打赏
  • 举报
回复
rp = (rip*)buf;
Hik_golt 2007-12-15
  • 打赏
  • 举报
回复
不理解,用结构体的指针去指向buffer?.. 强制转换也不能随便用的啊..
tangshuiling 2007-12-15
  • 打赏
  • 举报
回复
楼主是不是想用结构体的成员提取buffer中的数据??
starwalker 2007-12-14
  • 打赏
  • 举报
回复
rp = (struct rip *)buf;
long000 2007-12-14
  • 打赏
  • 举报
回复
5L的只在VS2005上能用~~~
ShardowM 2007-12-14
  • 打赏
  • 举报
回复
刚刚写错了

rp = static_cast<rip*>(buf);
ShardowM 2007-12-14
  • 打赏
  • 举报
回复
rp = static_cast<rip*>buf;
飞哥 2007-12-14
  • 打赏
  • 举报
回复
1楼的就可
sinux_1983 2007-12-14
  • 打赏
  • 举报
回复
有何用意呢?

64,660

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧