我需要连接到端口 500 并打印通过的数据。有人可以指出我正确的方向吗?也许是一个示例程序..
错过了一部分..使用boost asio..
我将 c/c++ 与以下代码一起使用:
int z;
struct sockaddr_in portList;
int len_inet;
int s;
char dgram[512];
time_t td;
struct tm tm;
s = socket(AF_INET,SOCK_DGRAM,0);
if ( s == -1 ) {
strerror(errno);
}
memset(&portList,0,sizeof portList);
portList.sin_family = AF_INET;
portList.sin_port = htons(500);
portList.sin_addr.s_addr = inet_addr("127.0.0.1");
if ( portList.sin_addr.s_addr == INADDR_NONE ) {
strerror(errno);
}
len_inet = sizeof portList;
z = bind(s, (struct sockaddr *)&portList, len_inet);
if ( z == -1 ) {
strerror(errno);
}
for (;;) {
z = recv(s, dgram, sizeof dgram, 0);
if ( z < 0 ) {
strerror(errno);
}
std::cout << dgram << std::endl;
}
但我得到的只是垃圾值,例如:
����҉
我做错了什么?