Windows下使用Codeblocks写c语言socket

原创 2017年06月15日 09:00:54

如何在Windows下使用Codeblocks写c语言socket

  • 首先新建一个工程
  • 然后右键点击工程名称->Build options->Linker setting
    • 在Link libraries->add->在codeblocks安装路径下MinGW\lib下找到libwsock32.a,加入工程
    • 在Other linker options下加入-lwsock32
  • 书写符合winsock语法要求的代码运行

    示例udp代码

  • server
#include <WINSOCK2.H>
#include <stdio.h>
#include <string.h>
#include <time.h>
int main()
{
    WSADATA wsaData;
    WORD versionRequired=MAKEWORD(1,1);
    WSAStartup(versionRequired,&wsaData);
    SOCKET sock_fd;
    SOCKADDR_IN  servaddr;
    SOCKADDR_IN  cliaddr;
    int len = sizeof(cliaddr);
    char buff[1024];
    time_t timep;
    int i = 0;
    sock_fd = socket(PF_INET,SOCK_DGRAM,0);
    servaddr.sin_family = AF_INET;
    servaddr.sin_port = htons(6666);
    servaddr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
    memset(buff,0,sizeof(buff));
    bind(sock_fd, (SOCKADDR *)&servaddr, sizeof(servaddr));
    while(1)
    {
        memset(buff,0,sizeof(buff));
        recvfrom(sock_fd,buff,sizeof(buff),0,(struct sockaddr *)&cliaddr,&len);
        time(&timep);
        sprintf(buff, "%s",  ctime(&timep));
        sendto(sock_fd, buff, strlen(buff)-1, 0, (struct sockaddr *)&cliaddr, sizeof(servaddr));
        printf("%s%d\n", buff,i++);
    }
    closesocket(sock_fd);
    WSACleanup();
    return 0;
}
  • client
#include <WINSOCK2.H>
#include <stdio.h>
#include <string.h>
int main()
{
    WSADATA wsaData;
    WORD versionRequired=MAKEWORD(1,1);
    WSAStartup(versionRequired,&wsaData);//协议库的版本信息
    SOCKET sock_fd;
    SOCKADDR_IN  servaddr;
    char buff[100];
    const char *str = "gettime";
    const char *serverip = "127.0.0.1";
    short port = 6666;
    sock_fd = socket(PF_INET,SOCK_DGRAM,0);
    servaddr.sin_family = AF_INET;
    servaddr.sin_port = htons(port);
    servaddr.sin_addr.S_un.S_addr = inet_addr(serverip);
    memset(buff,0,sizeof(buff));
    sendto(sock_fd, str, strlen(str), 0, (struct sockaddr *)&servaddr, sizeof(servaddr));
    recvfrom(sock_fd, buff, sizeof(buff), 0, NULL, NULL);
    printf("%s\n",buff);
    closesocket(sock_fd);
    WSACleanup();
    return 0;
}

Windows下C语言单线程socket通信

编程环境:CodeBlocks + MinGW1、服务器端#include #include #include // 函数定义头文件,调用API#pragma comment(lib,"wsk2...
  • sddxqlrjxr
  • sddxqlrjxr
  • 2016年04月13日 20:37
  • 2918

codeblocks网络编程不识别socket等

转载自http://www.sjsjw.com/kf_code/article/033253ABA018712.asp 在使用CodeBlocks编译C++程序时,  编译程序的时候出现如...
  • buaa1214wwj
  • buaa1214wwj
  • 2016年07月26日 11:07
  • 1748

Windows下编写代码Linux编译调试的方法(CodeBlocks+secureCRT+secureFX)

SourceInsight编写代码 secureFX上传Linux secureCRT远程连接linux,gcc编译,gdb调试
  • ceasadan
  • ceasadan
  • 2016年07月29日 14:37
  • 1175

winsock教程- windows下的socket编程(c语言实现)

winsock教程- windows下的socket编程(c语言实现)  winsock教程- windows下的socket编程(c语言实现) 使用winsock进行socket 编程   ...
  • wh987655
  • wh987655
  • 2014年08月23日 15:35
  • 2186

windows下简单的C语言服务器(TCP)

--------------------------Mastic--------------------------------------------------------------------...
  • Mastic_29
  • Mastic_29
  • 2017年04月19日 20:44
  • 1076

C语言实现windows和linux下socket通信

client on windows and server on linux
  • u011241606
  • u011241606
  • 2016年03月24日 00:16
  • 943

使用C语言socket实现windows pc与ftp服务器通信---socket实现ftp客户端

使用C语言socket实现windows pc与ftp服务器通信---socket实现ftp客户端
  • cjc211322
  • cjc211322
  • 2015年02月02日 21:27
  • 2728

Windows/Linux C语言的Socket编程例子(TCP和UDP)

最近看了一些网络编程的书籍,一直以来总感觉网络编程神秘莫测,其实网络编程入门还是很容易学的,下面这些代码是我在linux下编写的,已经运行过了,编译之后就可以运行了。有不足之处希望大家多多指出,共同学...
  • zgtjwyftc
  • zgtjwyftc
  • 2013年08月06日 14:03
  • 15533

linux下最好的c开发环境——codeblocks

Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境。 Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了著名的图形界面库w...
  • aniuge008
  • aniuge008
  • 2017年06月13日 20:54
  • 399

使用codeblocks(WINDOWS7下)编写WIN32 GUI应用程序时一些注意事项

嫌弃Visual  Studio  2010太过庞大,在windows7
  • itmr_liu
  • itmr_liu
  • 2014年08月23日 11:23
  • 3207
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Windows下使用Codeblocks写c语言socket
举报原因:
原因补充:

(最多只允许输入30个字)