Ⅰ Windows網路編程中 UDP通信問題
在VC中進行WINSOCK的API編程開發的時候,需要在項目中使用下面三個文件,否則會出現編譯錯專誤。
1.屬WINSOCK.H: 這是WINSOCK API的頭文件,需要包含在項目中。
2.WSOCK32.LIB: WINSOCK API連接庫文件。在使用中,一定要把它作為項目的非預設的連接庫包含到項目文件中去。
3.WINSOCK.DLL: WINSOCK的動態連接庫,位於WINDOWS的安裝目錄下。
Ⅱ 如何再linux下使用winsock2.h頭文件
應該使用不了,Linux的socket編程使用它自己的頭文件,winsock2.h只能在Windows系統上用,只能用於Windows的socket編程。你親自在Linux上編寫一個套接字程序就明白了。
Ⅲ windows下socket編程,需要包哪些頭文件和dll或者lib啊
如果你用VC下的MFC工程那麼只需要添加一個頭文件
#include <afxsock.h>
並且做初始化
AfxSocketInit();
這個初始化最好在app類對話框創建之前做.
如果你是其他項目就可能會用到
#include <winsock.h>
#include <winsock2.h>
常用的就這兩個另外庫可能會用到
#pragma comment(lib,"winsock.lib")
#pragma comment(lib,"ws2_32.lib")
可能會用到這兩個庫,具體根據你用了那些API而定
Ⅳ C語言,WIN下如何包含Socket庫函數的頭文件
socket庫函數的頭文件是
#include <winsock.h>
附錄二 Windows Sockets頭文件
頭文件winsock.h 包含了由Windows Sockets規范所使用的類型和結構定義,常數,宏以及函數原型。Windows Sockets應用程序只要在源文件中包含了winsock.h即可,而不必包含為Berkeley軟體的移植而提供的兼容頭文件。
頭文件winsock.h 包含了標准Windows頭文件windows.h的一些類型和定義。在Windows 3.0 SDK (Software Developer's Kit)的頭文件windows.h 中缺少 #include 保護,因此應用程序必須象包含winsock.h 一樣包含windows.h文件, 你應該象下面一樣在#including winsock.h之前定義符號_INC_WINDOWS:
#include <windows.h>
#define _INC_WINDOWS
#include <winsock.h>
SDK for Windows 3.1 及其以後版本的用戶不必這樣做。
頭文件winsock.h由Windows Sockets規范定義並提供,任何Window Sockets實現都必須和它保持一致。下面列出了winsock.h的內容:
/* WINSOCK.H--definitions to be used with the WINSOCK.DLL
*
* This header file corresponds to version 1.1 of the Windows Sockets specification.
Ⅳ 在windows下用C語言如何實現socket網路編程,需要用到哪些頭文件或者庫
需要用到的頭文件包含:
#include <winsock2.h>
#include <windows.h>
與Linux環境下socket編程相比,windows環境多了一個步驟:啟動或者初始化winsock庫
Winsock,一種標准API,一種網路編程介面,用於兩個或多個應用程序(或進程)之間通過網路進行數據通信。具有兩個版本:
Winsock 1:
Windows CE平台支持。
頭文件:WinSock.h
庫:wsock32.lib
Winsock 2:
部分平台如Windows CE貌似不支持。通過前綴WSA可以區別於Winsock 1版本。個別函數如WSAStartup、WSACleanup、WSARecvEx、WSAGetLastError都屬於Winsock 1.1規范的函數;
頭文件:WinSock2.h
庫:ws2_32.lib
mswsock.h用於編程擴展,使用時必須鏈接mswsock.dll
(5)winsock頭文件擴展閱讀
winsock庫的載入與卸載:
載入:int WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData);
載入成功,返回值為0。
WORD wVersionRequested:載入的winsock版本,使用宏MAKEWORD(x, y),x表示高位元組,y表示低位元組。然而使用時MAKEWORD(2, 2)。高位元組與低位元組相同~~
LPWSADATA lpWSAData:WSADATA結構的指針,傳入參數後,系統幫助我們填充版本信息。有興趣的可以看看結構體內容,不過基本用不著。
卸載:int WSACleanup(void);比起載入,卸載的函數真是輕松愉快。