Last active
December 20, 2015 07:39
-
-
Save castaneai/6095189 to your computer and use it in GitHub Desktop.
[c++][winsock]sockaddr構造体から"127.0.0.1"のようなIPv4文字列を取り出す例
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#pragma comment(lib, "ws2_32.lib") | |
/* | |
Windows.hをインクルードする場合は | |
#define WIN32_LEAN_AND_MEAN | |
を入れることで、Windows.hとWinsock2.hの定義衝突を回避できる | |
*/ | |
#include <Winsock2.h> | |
/* | |
返り値のconst char*はどこに確保されているのか、それは | |
winsockの内部である。よって複数回inet_ntoaを呼び出すと確保されたconst char*領域は | |
最後に呼び出したときの結果で上書きされている。 | |
http://www.geekpage.jp/programming/winsock/tips-inet_ntoa.php | |
*/ | |
const char* get_ipv4_address_text(const sockaddr* address) { | |
return inet_ntoa(reinterpret_cast<const sockaddr_in*>(toAddress)->sin_addr); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment