c言語の"汎用"という意味について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら

トピックに返信する


答えを正確にご入力ください。答えられるかどうかでスパムボットか否かを判定します。

BBCode: ON
[img]: ON
[flash]: OFF
[url]: ON
スマイリー: OFF

トピックのレビュー
   

展開ビュー トピックのレビュー: c言語の"汎用"という意味について

Re: c言語の"汎用"という意味について

#3

by koudaill » 8年前

御回答ありがとうございます。
確かに、struct sockaddr_inなどはstruct sockaddrにキャストするので、回答者様の通りだと分かりました。ありがとうございます。

Re: c言語の"汎用"という意味について

#2

by tk-xleader » 8年前

ここでの「汎用」の意味は、おそらくソケットのプロトコルレベルでの汎用性のことではないでしょうか。例えばですが、TCPとUDPとではsockaddrの意味が異なるはずですが、いずれもsockaddrで表せるデータ構造になっている、ということだと思います。つまり、プロトコル間に共通のデータ構造という意味です。

[訂正]
TCP/IPとUDP/IPではいずれもsockaddr_inを使うので同じのようです。sockaddrの派生形としては次のようなものがあるみたいです。
sockaddr_in IPv4通信用。
sockaddr_in6 IPv6通信用。
sockaddr_un Unixドメイン通信用。
sockaddr_storage 長さ不明時用。
出典: http://www.coins.tsukuba.ac.jp/~syspro/ ... kaddr.html

c言語の"汎用"という意味について

#1

by koudaill » 8年前

初めて投稿させていただくので、至らぬところがあったらすみません。
最近、TCPなどのネットワークプログラミングについて勉強しているのですが、
そのなかで例えば、struct sockaddrという汎用型のデータ構造がある、という記述を見ました

ここでいう"汎用"とは、どういうことなのでしょうか?一般に"汎用"とは、いろいろに応用が効く、
のような意味だと認識していますが、なぜわざわざ"汎用"と言うのでしょうか?
汎用ではないデータ構造が存在しているなら、それらを区別するために明記するためだったら
分かるのですが。

参考url:http://capm-network.com/?tag=C言語-ソケットプログラミング

ページトップ