socket.h (ソケット)
C++で簡単にソケットを使うためのヘッダファイル.sys/socket.hやwinsock.hを統一されたインターフェイスで扱うことが可能です.
kstm.orgの活動の一環としてつくられた某ソフトのヘッダファイルをもとにしています.
PDPとかマイナーなバイトオーダーへの対応は止めました.
利用の制限はありません.個人の責任において自由に使ってください.
省メモリです.
- sizeof(Socket) = 4
- sizeof(SocketServer) = 20
サンプル
- VC++: 普通にコンパイル
- gcc: g++ sockettest.cpp
#include <iostream> #include "socket.h" using namespace std; int main(){ Socket soc("www.binzume.net",80); soc.write("GET /library/kwui/socket.h HTTP/1.0\n"); soc.write("Host: www.binzume.net\n\n"); while(!soc.error()) { cout << soc.read() << flush; } soc.close(); return 0; }
使い方
ヘッダファイルなのでincludeするだけです.何もたいしたことやってないので,ソースを見てください.ブロッキングするのでthread.hとかと合わせて使ってください.
Socket
- Socket(host,port) 接続
- connect(host,port) 接続
- close() 切断
- writeInt(long)
- writeShort(short)
- writeByte(char)
- writeLine(str)
- readInt()
- readShort()
- readByte()
- readLine()
SocketServer
サーバ用
- SocketServer(port) 指定したポートで待つ
- accept() 接続したSocketが戻る
- check() 接続待ちのクライアントがあればtrue
履歴
- 2009-01-22 公開
Copyright © binzume all rights reserved.