📄 y.c
字号:
//此程序配合开发板webserver.c调试
#include <stdio.h>
#include "winsock2.h"
#include "windows.h"
void main() {
//----------------------
// Initialize Winsock.
WSADATA wsaData;
SOCKET ConnectSocket;
struct sockaddr_in clientService;
int bytesSent,numread,filesize;
DWORD dwStart,dwEnd;
double delta,rate;
unsigned char sendbuf[1];
FILE *fp;
int iResult = WSAStartup(MAKEWORD(2,2), &wsaData);
if( (fp = fopen( "c:\\y.pdf", "rb" )) == NULL ){
printf("Problem opening the file\n");
return;
}
filesize = 0;
if (iResult != NO_ERROR)
printf("Error at WSAStartup()\n");
//----------------------
// Create a SOCKET for connecting to server
ConnectSocket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if (ConnectSocket == INVALID_SOCKET) {
printf("Error at socket(): %ld\n", WSAGetLastError());
WSACleanup();
return;
}
//----------------------
// The sockaddr_in structure specifies the address family,
// IP address, and port of the server to be connected to.
clientService.sin_family = AF_INET;
clientService.sin_addr.s_addr = inet_addr( "192.168.0.6" );
clientService.sin_port = ntohs( 2280 );//2280 for 1 channel tcp test ; 2290 for multi tcp test
//----------------------
// Connect to server.
if ( connect( ConnectSocket, (SOCKADDR*) &clientService, sizeof(clientService) ) == SOCKET_ERROR) {
printf( "Failed to connect.\n" );
WSACleanup();
return;
}
dwStart = GetTickCount();
while( !feof( fp ) ){
numread = fread( sendbuf, sizeof( char ), sizeof(sendbuf), fp );
if( ferror( fp ) ) {
perror( "Read error" );
break;
}
bytesSent = send( ConnectSocket, sendbuf, numread, 0 );
filesize = filesize + numread;
}
dwEnd = GetTickCount();
delta = (dwEnd - dwStart) / 1000.0;
if(delta < 1E-6 && delta >= 0.0)
rate = 0;
else
rate = filesize * 8 / 1000.0 / delta;
printf("File size=%d(bytes) , trans time=%lf(s) , trans rate=%lf(Kbps)\n",filesize,delta,rate);
printf("Press any key to continue...\n");
getchar();
WSACleanup();
fclose(fp);
return;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -