读书人

TCPamp;UDP数据传输,该怎么处理

发布时间: 2012-03-14 12:01:12 作者: rapoo

TCP&UDP数据传输
本机发送端口固定55543,发送16进制数8位(如01 24 0B 01 02 03 02 06)到固定IP(192.168.1.6),刚学VC++,不熟,拜托高手帮帮忙。

[解决办法]
就几条api,
先初始化socket
填写发送地址
必要还可以绑定下端口
然后就结束了,
接受就开个线程弄个死循环在那收就得了。
[解决办法]

C/C++ code
#include <stdio.h>#include "winsock2.h"void main() {    WSADATA wsaData;  SOCKET SendSocket;  sockaddr_in RecvAddr;  int Port = 55543;  char SendBuf[8] = {0x01, 0x24, 0x0B, 0x01, 0x02,0x03,0x02, 0x06};  int BufLen = 8;  //---------------------------------------------  // Initialize Winsock  WSAStartup(MAKEWORD(2,2), &wsaData);  //---------------------------------------------  // Create a socket for sending data  SendSocket = socket(AF_INET, SOCK_DGRAM, IPPROTO_UDP);  //---------------------------------------------  // Set up the RecvAddr structure with the IP address of  // the receiver (in this example case "192.168.1.6")  // and the specified port number.  RecvAddr.sin_family = AF_INET;  RecvAddr.sin_port = htons(Port);  RecvAddr.sin_addr.s_addr = inet_addr("192.168.1.6");  //---------------------------------------------  // Send a datagram to the receiver  printf("Sending a datagram to the receiver...\n");  sendto(SendSocket,     SendBuf,     BufLen,     0,     (SOCKADDR *) &RecvAddr,     sizeof(RecvAddr));  //---------------------------------------------  // When the application is finished sending, close the socket.  printf("Finished sending. Closing socket.\n");  closesocket(SendSocket);  //---------------------------------------------  // Clean up and quit.  printf("Exiting.\n");  WSACleanup();  return;}
[解决办法]
socket编程例子,看看就明白了,端口是可以指定的!

读书人网 >C++

热点推荐