首页 / 知识
如何在z / OS上的C ++中使用C套接字API
2023-04-11 12:37:00

How to use the C socket API in C++ on z/OS
我在使C套接字API在
尽管我包括了
我是否遗漏了一些明显的东西,或者与
更新:经过进一步调查,我发现我遇到了一个
现在,我个人不知道此 测试应用
编译/链接输出:
检查sys / sockets.h确实包含了我需要的定义,据我所知,它没有被任何 但是,我注意到它包含以下内容:
基本上封装了整个文件?不确定是否重要。 随手保存一份IBM手册副本:
IBM出版物通常很好,但是您需要习惯它们的格式,以及知道在哪里寻找答案。您会经常发现要使用的功能受"功能测试宏"保护
您应该请友好的系统程序员安装XL C / C ++运行时库参考:手册页 格式 X /开
伯克利插座
在GNU / Linux中使用C ++中的BSD套接字API时,我没有遇到任何麻烦。这是我使用的示例程序:
因此,我对此的看法是z / OS可能是这里的复杂因素,但是,因为我以前从未使用过z / OS,因此其中的编程要少得多,所以我不能确定地说。 :-P 请参阅《 z / OS XL C / C ++编程指南》中的"使用z / OS UNIX系统服务"套接字部分。确保包含必要的头文件并使用适当的#define。 多年来,指向该文档的链接已经发生了变化,但是您应该可以通过在ibm.com上找到"支持和下载"部分的当前位置并按标题搜索文档来轻松地找到它。 _OE_SOCKETS似乎只是为了启用/禁用套接字相关符号的定义。在某些库中,有很多宏可以做到这一点,以确保您无需编译/链接不需要的部分,这种情况并不少见。该宏在其他套接字实现中不是标准的,它似乎是z / OS特有的。
看一下这个页面: 所以尝试
在包含sys / socket.h之前 您可能想看看cpp-sockets,这是套接字系统调用的C ++包装器。它可用于许多操作系统(Win32,POSIX,Linux,* BSD)。我认为它不适用于z / OS,但是您可以看一下它使用的包含文件,并且将有许多经过测试的代码示例,这些示例在其他OS上也能很好地工作。
@Jax:
基本上,任何时候只要C ++程序想要链接到基于C的工具,
免责声明:我不是C ++程序员,但是我非常了解C。一世 降价促销也把这些奇怪的东西作为我的下划线。 您应该只能够在C套接字周围编写一个类似以下内容的抽象类:
然后,有一些方法可用于通过套接字打开,关闭和发送数据包。 例如,公开通话可能看起来像这样:
答案是使用下面的c89标志:
示例如下;
有关更多信息,请在《 z / OS XLC / C ++用户指南》中查找" C89选项"。 |
最新内容
相关内容
python代码如何在命令行运行
python代码如何在命令行运行,代码,培训,路径,空格,文件,下面,以上,目录,更多,内容,我们在编写python代码时,可以在交互模式下运行代码,也可以用如何在Ruby脚本中运行Rake任务?
如何在Ruby脚本中运行Rake任务?,如何在Ruby脚本中运行Rake任务?,调用,命令行,我想,我有一个,How do I run Rake tasks within a Ruby s关于.net:如何在Asp.net中使用HSL
关于.net:如何在Asp.net中使用HSL,关于.net:如何在Asp.net中使用HSL,结构,工具,方法,鲍威尔,how to use HSL in Asp.net.net中使用哪些关于 unix:如何在 Ruby 中使用 (n)c
关于 unix:如何在 Ruby 中使用 (n)curses?,关于 unix:如何在 Ruby 中使用 (n)curses?,状态,作业,指示,进度条,How do I use (n)curses in关于vb6:如何在Visual Basic中使用
关于vb6:如何在Visual Basic中使用互斥锁,关于vb6:如何在Visual Basic中使用互斥锁,返回值,参数,函数,这是,How to use a mutex in Vis