问题描述
|
我发现了许多指南来帮助我进行套接字编程,但是我对C还是很陌生,当我尝试执行该程序时,它会出现错误
#include <sys/socket.h>
#include <netinet/in.h>
为什么是这样?我正在使用Eclipse执行此操作。它不会编译并说“该项目中存在错误,您要继续吗”
并突出显示这两行,很明显它没有要包含的文件。.不知道如何整理它们。
指南:http://beej.us/guide/bgnet/output/html/multipage/clientserver.html#datagram
编辑:在wnidows框上对其进行编码,但必须在Windows框和不同风格的linux上工作/运行
解决方法
您需要在包含文件中包含\“ \”或<>。您还需要一个#符号。
例如:
#include <sys/socket.h>
#include <netinet/in.h>
,这些头文件可在FreeBSD,Mac OSX和linux等unixy操作系统上使用。由于您现在正在使用Windows,因此必须使用Winsock,这是Windows自己对BSD套接字API的实现,并且具有不同的头和一些稍微不同的函数名。
这在Beej的指南的一个部分中进行了详细说明:http://beej.us/guide/bgnet/output/html/singlepage/bgnet.html#windows
他还提到安装cygwin,它将允许您使用当前使用的标头,但是我不确定这是否适合您。