関数メモ(アルファベット順)


赤い文字MacOSXのシステム関数
緑の文字C言語の標準関数

[ sys/types.h ] [ sys/socket. ] accept()
int accept(int s, struct sockaddr *addr, socklen_t *addrlen);
addrlenの長さのアドレス(addr)でソケットsに接続することを許可する
[stdlib.h] atoi()
int atoi(const char *nptr);
nptrが示す文字列の先頭部分をint型に変換して返す
[ sys/types.h ] [ sys/socket. ] bind()
int bind(int s, const struct sockaddr *name, socklen_t namelen);
ソケットsに名前を割り当てる
[ sys/types.h ] [ sys/socket.h ] connect()
int connect(int s, const struct sockaddr *name, socklen_t namelen);
ソケットsにnameで接続要求
[stdio.h] fprintf()
int fprintf(FILE *stream, const char *format, ...);
...で指定した引数をフォーマット(format)に従ってストリーム(stream)に出力する
[sys/types.h][sys/socket.h][netdb.h] getaddrinfo()
int getaddrinfo(const char *hostname, const char *servname, const struct addrinfo *hints, struct addrinfo **res);
ホスト(hostname)とサーバ(servname)の情報をaddrinfo構造体としてresに返す。
hintsはオプション
[netdb.h] gethostbyname()
struct hostent * gethostbyname(const char *name);
ホスト(name)の情報をhostent構造体で返す
[sys/types][sys/socket.][netdb.h] getnameinfo()
int getnameinfo(const struct sockaddr *sa, socklen_t salen, char *host, size_t hostlen, char *serv, size_t servlen, int flags);
ソケットアドレス構造体(sa)をホスト名(host)とサービス名(serv)に変換
[netdb.h] getservbyname()
struct servent * getservbyname(const char *name, const char *proto);
/etc/servicesからプロトコル(proto)を用いるものを探し、サーバ(name)の情報をservent構造体で返す
[arpa/inet.h] htons()
uint16_t htons(uint16_t hostshort);
hosthortをネットワークバイトオーダーからホストバイトオーダーに変換する
[sys/types.h][sys/socket.h][netinet/in.h] [arpa/inet.h] inet_addr()
in_addr_t inet_addr(const char *cp);
インターネットホストのアドレス(cp)を数値とドット(133.13.~~)記法からバイナリ値へ変換して返す
[sys/types.h][sys/socket.h][netinet/in.h] [arpa/inet.h] inet_ntop()
const char * inet_ntop(int af, const void * restrict src, char * restrict dst, socklen_t size);
インターネットホストのアドレス(src)をネットワーク用のフォーマットからプレゼンテーション用のフォーマットに変換する
afはアロレスファミリ、dstはバッファ、sizeはサイズ
[ string.h ] memset()
void *memset(void *s, int c, size_t n);
sが指すオブジェクトの先頭n文字に、unsigned char型に変換したcの値を代入する。
[arpa/inet.h] ntohs()
uint16_t ntohs(uint16_t netshort);
netshortをホストバイトオーダーからネットワークバイトオーダーに変換する
[sys/uio.h][sys/types.h][unistd.h]read()
ssize_t read(int d, void *buf, size_t nbytes);
ディスクリプター(d)からnbytesにbufの分だけ文字を読み込む
[ sys/types.h ] [ sys/socket. ] socket()
int socket(int domain, int type, int protocol);
protocolを使ってtypeで指定した通信方式を使う通信範囲がdomainなソケットを作成
[stdlib.h] strtoul()
unsigned long strtoul(const char *nptr, char **endptr, int base);
nptrが示す文字列の先頭部分をunsigned lon型に変換して返す
[sys/uio.h][sys/types.h][unistd.h]write()
ssize_t write(int d, const void *buf, size_t nbytes);
ディスクリプター(d)にnbytesにbufの分だけ文字を書き込む


構造体については構造体メモを参照