CソケットAPIをC++で正しく動作させることに問題があります。具体的には、私はsys/socket.h
を含んでいますが、私はまだAF_INET
が定義されていないと私に言ってコンパイル時のエラーを取得します。明らかに何かが欠落しているか、これがz/OS
でこのコーディングを行っているという事実に関連していて、私の問題ははるかに複雑ですか?z/OSのC++でCソケットAPIを使用する方法
更新は、さらなる調査の結果、私は私が打ってる#ifdef
があることを発見しました。私は私が使用しているソケットのどの「タイプ」を定義しない限り、どうやらz/OS
が幸せではない:今
#define _OE_SOCKETS
任意のz/OS
ソケットプログラマが出ている場合、私は個人的にこの_OE_SOCKETS
がために、実際に何であるか見当がつかないので、そこに(皆さん3人)、おそらくあなたは私にこのすべての仕組みの概要を教えてもらえますか?
確かにテストアプリを投稿できます。
#include <sys/socket.h>
int main()
{
return AF_INET;
}
コンパイル/リンク出力:
CXX -Wc、XPLINK -Wl、XPLINK -o inet_test inet.C
"./inet.C"、行5.16:CCN5274(S) "AF_INET"の名前検索で宣言が見つかりませんでした。
CCN0797(I)ファイル./inet.Cのコンパイルに失敗しました。オブジェクトファイルが作成されていません。
sys/sockets.hのチェックには必要な定義が含まれていますが、わかる限り#ifdef文でブロックされていません。
私は、しかし、それは次のものが含ま気づいている:基本的にはファイル全体をカプセル化し
#ifdef __cplusplus
extern "C" {
#endif
。それが重要かどうかはわかりません。
これは元の質問とは関係ありません。 –