`
qvb3d
  • 浏览: 171195 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

gcc的socket http通信程序

 
阅读更多

gcc的socket http通信程序

 

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

#include <sys/types.h>

#include <unistd.h>

#include <arpa/inet.h>

#include <sys/socket.h>

#include <netinet/in.h>

#include <netdb.h>

#include <errno.h>

#define PORT 80

#define SERVER_IP "192.168.1.21"

 

int main(int argc,char *argv[])

{

int ii,i,serverSocket;

struct sockaddr_in clientAddr;

char buffer[4096];

serverSocket =socket(AF_INET,SOCK_STREAM,0);

if(serverSocket==-1)

  {

 printf("Invalid socket\n");

 exit(1);

  }

bzero(&clientAddr,sizeof(clientAddr)); 

clientAddr.sin_family=AF_INET;

clientAddr.sin_port=htons(PORT);

clientAddr.sin_addr.s_addr=inet_addr(SERVER_IP);

if(connect(serverSocket,&clientAddr,sizeof(clientAddr))<0)

{

perror("connect");

exit(1);

}

strcpy(buffer,"GET / HTTP/1.1\nHost:192.168.1.21\n\n");

printf("\n%s\n",buffer);

if(send(serverSocket,buffer,sizeof(buffer),0)<0)

{

perror("send error");

exit(1);

}

ii=(int)recv(serverSocket,buffer,sizeof(buffer),0);

printf("\nrev=%d length\n",ii);

for(i=0;i<ii;i++)

{

printf("%c",buffer[i]);

}

return 1;

}


分享到:
评论

相关推荐

    linux和windows之间的socket通信代码

    socket_test.c文件放到linux环境下,用gcc进行编译,运行。 socket_test文件夹用VC++6.0打开运行,就可以实现windows和 linux间简单的通讯,能够进行字符的收发。

    基于C语言实现socket套接字双机通信源码(ubuntu与windows).zip

    程序功能:用于socket套接字通信,本程序作为客户端 使用gcc编译器,编译时需要手动添加添加ws2_32的链接库"gcc socket_windows_client.c -o gcc_windows_client.exe -lws2_32" 运行环境:ubuntu18.04 程序功能: ...

    linux socket通信DEMO

    本程序实现了linux c编程的socket通信代码,这个代码是基于不建立连接的通信,使用linux的gcc编程器或是arm-none-....嵌入式编译器可以编译通过,实现双向通信,通信时间间隔10ms

    实验三Socket通信实验报告.doc

    实验三Socket通信实验报告 (1)实验目的和要求 1. 掌握VB、VC++、VS或JAVA等集成开发环境编写网络程序的方法; 2. 掌握客户/服务器(C/S)应用的工作方式; 3. 学习网络中进程之间通信的原理和实现方法; 4. 理解单...

    使用SOCK-DGRAM类型的socket实现的ping程序

    而且还需要有root权限才能运行,本文简要介绍ICMP协议,并给出一个使用普通的常用于UDP通信的socket实现ping的实例,本文将提供完整的源程序,本文的程序在 Ubuntu 20.04 下测试通过,gcc 版本号 9.4.0;阅读本文...

    基于linux的socket聊天室

    在linux下编写并调试服务器端程序和客户端程序,实现了服务器、客户端之间的连接和通信。可以在单机上开辟两个终端窗口分别运行客户、服务器端的程序,或者将两台主机连接分别作为客户和服务器的方式。在技术实现上...

    网络编程socket之accept函数

    对于服务器编程中最重要的一步等待并接受客户的连接,那么这一步在编程中如何完成...它从内核中取出已经建立的客户连接,然后把这个已经建立的连接返回给用户程序,此时用户程序就可以与自己的客户进行点到点的通信了。

    网络socket编程集锦

    网络socket编程集锦,程序经过Linux平台PC上用 GNU 的gcc 成功编译过,适合新手学习借鉴。

    udp通信,windows和linux版本

    windows下的程序用vc6控制台程序编写,linux下的程序用gcc编译即可。除了同一操作系统下的udp通信外,还能进行windows下与linux下的客户端与服务端通信。出现中文乱码的话,那一定是运行此程序的窗口的编码格式不...

    linux socket编程

    基于linux系统上的gcc编译器,用c语言编写的socket程序,实现了客服端与服务器端通信

    C++实现的Socket接口实现自定义协议通信.zip

    Visual C++、gcc 等 C++ 集成开发环境。 功能要求如下: 运输层协议采用 TCP 客户端采用交互菜单形式,用户可以选择以下功能: a) 连接:请求连接到指定地址和端口的服务端。 b) 断开连接:断开与服务端的连接。 ...

    基于Linux网络聊天室的设计

    在Linux下编写并调试服务器端程序和客户端程序,实现了客户、服务器之间的连接和通信。可以在单机上开辟两个窗口分别运行客户、服务器端的程序,或者将两台主机连接分别作为客户和服务器的方式。本设计使用网络套接...

    如何用C语言操作arp cache

    对socket通信是至关重要的,arp cache由Linux内核进行维护,本文介绍如何用ioctl获取arp cache记录,添加新记录到arp cache中,删除arp cache中记录,每一种操作均给出了完整的源程序,本文程序在ubuntu 20.4中编译...

    Linux高级程序设计原代码 杨宗德等主编

    本书以2.6内核的Linux操作系统为开发平台、GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux下C语言开发环境、C语言开发工具、内存管理、ANSI C文件I/O管理、POSIX文件I/O管理、文件及目录管理、进程管理、UNIX进程...

    Linux高级程序设计

    本书以2.6内核的Linux操作系统为开发平台、GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux下C语言开发环境、C语言开发工具、内存管理、ANSI C文件I/O管理、POSIX文件I/O管理、文件及目录管理、进程管理、 UNIX进程...

    Linux应用系统开发及系统调试.txt

    Linux应用系统开发及系统调试视频教程共75讲,主要讲解了GNU开发环境基础、Linux高级程序、Linux进程管理、进程间通信、线程、网络编程、HTTP原理、Socket内 核跟踪等内容,全套教程可以在本站下载观看,目录如下: ...

    内核和用户空间通信—netlink源码

    (2)当用户进程通过Ctrl+C来结束该程序时,调用信号处理函数sig_int,向内核发送IMP2_CLOSE的消息,结束socket。 该文件的源码如下: 二、编译和测试 1. 整个源文件编译的Makefile如下: all: gcc -O2...

    嵌入式Linux应用程序开发标准教程(第2版全)

    接着系统地讲解了嵌入式Linux的环境搭建,以及嵌入式Linux的I/O与文件系统的开发、进程控制开发、进程间通信开发、网络应用开发、基于中断的开发、设备驱动程序的开发以及嵌入式图形界面的开发等,并且还安排了丰富...

    史上最强的嵌入式底层驱动开发课程 Linux系统开发+Linux高级程序+主板开发+ARM等

    │ ├53 - Linux高级程序_进程间通信_Semaphore1.mp4 │ ├54 - Linux高级程序_进程间通信_Semaphore2.avi │ ├55 - 线程_Thread1.avi │ ├56 - 线程_Thread2.mp4 │ ├57 - 线程_Thread3.mp4 │ ├58 - 网络编程_...

    linux局域网聊天工具(附带文档和源码参考)

    2.2 熟悉Linux操作系统下的C/C++应用程序开发环境,掌握linux系统下开发工具vi、gcc 和gdb的使用,以及makefile的写法; 2.3 掌握Linux环境下图形工具包GTK和网络编程中socket“套接字”的使用;

Global site tag (gtag.js) - Google Analytics