设为首页 加入收藏

TOP

Telnet模拟系统(Linux c)(六)
2019-01-25 12:08:36 】 浏览:503
Tags:Telnet 模拟 系统 Linux
类比标识
*/ char input_buf[ BUF_SIZE ]; //定义字符串存放输入信息 char recv_buf[ BUF_SIZE ]; //定义字符串存放服务器端返回信息 memset(input_buf, 0, sizeof(input_buf)); memset(recv_buf, 0, sizeof(recv_buf)); fgets( input_buf, BUF_SIZE, stdin ); //获取用户输入 input_buf[strlen(input_buf) - 1] = '\0'; //去除最后一个输入的确认 /* 向服务器发送消息 */ if ( send(connfd, input_buf, BUF_SIZE, 0) < 0 ) printf( "send failed" ); /* 从服务器接受消息 */ if ( recv(connfd, recv_buf, BUF_SIZE, 0) < 0 ) printf( "recv failed" ); /* 用户名处理 */ if ( flag == 'u' ) { if ( strcmp(recv_buf, error_user) == 0 ) { //用户名错误 puts( error_user ); return FALSE; } } /* 密码处理 */ else if ( flag == 'p' ) { if ( strcmp(recv_buf, error_password) == 0 ) { puts( error_password ); //密码错误 return FALSE; } } /* 命令处理 */ else if( flag == 'c' ) { if ( strcmp(recv_buf, exit_command) == 0 ) { //退出 printf("连接已断开\n"); return FALSE; } puts(recv_buf); //命令结果输出 } return TRUE; } int main( int argc, char *argv[] ) { int connfd; int serv_port; char recv_buf[ BUF_SIZE ]; struct sockaddr_in serv_addr; if ( argc != 3 ) { printf( "输入格式为: ./c [ip] [port]\n" ); exit ( 1 ); } memset( &serv_addr, 0, sizeof(struct sockaddr_in) );//置零 serv_addr.sin_family = AF_INET; serv_addr.sin_port = htons( atoi(argv[2]) ); inet_aton( argv[1], &serv_addr.sin_addr ); if ( serv_addr.sin_port == 0 ||serv_addr.sin_addr.s_addr == 0 ) { fprintf( stderr, "输入格式为: ./c [ip] [port]\n" ); exit ( 1 ); } connfd = socket( AF_INET, SOCK_STREAM, 0 ); //创建socket if ( connfd < 0 ) printf( "socket failed" ); if ( connect(connfd, (struct sockaddr *)&serv_addr,sizeof(struct sockaddr)) < 0 ) //连接服务器 { printf( "connect failed" ); exit(0); } printf("请输入用户名:"); /*输入操作*/ if ( send_recv( connfd, 'u' ) == TRUE ) { printf("请输入密码:"); if ( send_recv( connfd,'p' )== TRUE ) { while(1) { printf("guest@ubantu:"); if ( send_recv( connfd, 'c' )== FALSE ) { close( connfd ); exit(0); } } } } close( connfd ); return 0; }

 

首页 上一页 3 4 5 6 下一页 尾页 6/6/6
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇c语言----<项目>_小游戏<.. 下一篇C语言实现邻接矩阵创建无向图&图..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目