网络编程——客户端程序
来源:互联网 发布:数据伞监控软件 编辑:程序博客网 时间:2024/06/09 22:25
#include "stdlib.h"
#include "errno.h"
#include "sys/types.h"
#include "sys/socket.h"
#include "unistd.h"
#include "netinet/in.h"
#include "netdb.h"
#include "string.h"
//客户端初始化
void InitClient(int argc, char *argv[])
{
struct sockaddr_in server_addr;
struct hostent *host = NULL;
int portnumber;
int sockfd;
if(argc != 3){
fprintf(stderr, "Usage:%s hostname portnumbera", argv[0]);
exit(1);
}
if ((host = gethostbyname(argv[1])) == NULL)
{
fprintf(stderr , "GetHostName error:%s" , strerror(errno));
exit(1);
}
if((portnumber = atoi(argv[2])) < 0){
fprintf(stderr, "Usage:%s hostname portnumbera", argv[0]);
exit(1);
}
/* 客户端程序开始建立socket文件描述符 */
if ((sockfd = socket(AF_INET , SOCK_STREAM , 0)) == -1)
{
fprintf(stderr , "Sockfd error:%s a" , strerror(errno));
exit(1);
}
bzero(&server_addr , sizeof(server_addr));
server_addr.sin_family = AF_INET;//INTERNET
server_addr.sin_port = htons(portnumber);//选择端口号
server_addr.sin_addr = *((struct in_addr *)host->h_addr);
if (connect(sockfd , (struct sockaddr *)&server_addr , sizeof(struct sockaddr)) == -1)
{
fprintf(stderr , "Connect error:%s a" , strerror(errno));
exit(1);
}
printf("sockfd = %d\n", sockfd);
}
int main(int argc, char *argv[])
{
InitClient(argc, argv); //初始化客户端
while(1)
{
}
return 0;
}
终端操作:
编译:gcc client.c -o client
执行:./client <服务器ip> 9999(与服务器对应的端口号)
- 网络编程——客户端程序
- 网络编程入门客户端程序
- UNIX网络编程——TCP回射服务器/客户端程序
- 《UNIX网络编程》第一章——一个简单的时间获取客户端/服务器程序
- Linux网络编程--聊天室客户端程序
- Unity3D使用UDPClient网络编程客户端程序
- C++网络编程之客户端程序
- C++网络编程(二)--客户端服务器程序
- Linux 网络编程——TCP编程之客户端
- Linux网络编程09——TCP编程之客户端
- Linux 网络编程——TCP编程之客户端
- 网络编程-TCP服务器端程序和客户端程序
- 网络编程的基本概念 讲解客户端程序和服务器程序
- python核心编程(十三&十四)— 网络编程、网络客户端编程
- TCP网络程序实例——服务器端与客户端交互
- Linux网络编程一步一步学-HTTPS客户端程序示例
- Linux网络编程一步一步学-HTTPS客户端程序示例
- JAVA高级视频 网络编程 07 TCP客户端程序
- 淘宝文件系统-TFS解析链接
- Android的插件机制
- FreeType的使用
- code.csdn.net使用记录
- 善惡과 美醜 (易學原論 韓長庚)
- 网络编程——客户端程序
- 【Qt】设置程序版本等信息
- Android 无标题 全屏设置
- eclipse java应用程序debug模式无法启动
- eclipse智能提示快捷键Alt+/失效的解决办法
- Linux 的启动流程
- directX 9.0开发
- 黑马程序员-递归
- android菜单项添加