[#subprocess-output-2constructor-06]
= xref:subprocess.adoc[subprocess]::xref:subprocess/output.adoc[output]::output
:relfileprefix: ../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;util&sol;subprocess&period;h&gt;`

Sets up a pipe as the child&apos;s output channel&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:subprocess/output/2constructor-00.adoc[output](xref:subprocess/IOTYPE.adoc[IOTYPE] typ);
----

[.small]#xref:subprocess/output/2constructor-00.adoc[_» more&period;&period;&period;_]#

Uses an already open file descriptor as the child&apos;s output&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:subprocess/output/2constructor-03.adoc[output](int fd);
----

[.small]#xref:subprocess/output/2constructor-03.adoc[_» more&period;&period;&period;_]#

Uses the descriptor of an open FILE stream as the child&apos;s output&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:subprocess/output/2constructor-0e.adoc[output](FILE* fp);
----

[.small]#xref:subprocess/output/2constructor-0e.adoc[_» more&period;&period;&period;_]#

Opens a file for appending and uses it as the child&apos;s output&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:subprocess/output/2constructor-07.adoc[output](char const* filename);
----

[.small]#xref:subprocess/output/2constructor-07.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *typ*
| Channel type, which must be PIPE&period;
| *fd*
| Writable file descriptor to capture the child&apos;s output&period;
| *fp*
| Open FILE stream whose descriptor is used&period;
| *filename*
| Path of the file to create or append to&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
