fbpx
Wikipedia

Standard streams

In computer programming, standard streams are interconnected input and output communication channels[1] between a computer program and its environment when it begins execution. The three input/output (I/O) connections are called standard input (stdin), standard output (stdout) and standard error (stderr). Originally I/O happened via a physically connected system console (input via keyboard, output via monitor), but standard streams abstract this. When a command is executed via an interactive shell, the streams are typically connected to the text terminal on which the shell is running, but can be changed with redirection or a pipeline. More generally, a child process inherits the standard streams of its parent process.

Application edit

 
The standard streams for input, output, and error

Users generally know standard streams as input and output channels that handle data coming from an input device, or that write data from the application. The data may be text with any encoding, or binary data. In many modern systems, the standard error stream of a program is redirected into a log file, typically for error analysis purposes.

Streams may be used to chain applications, meaning that the output stream of one program can be redirected to be the input stream to another application. In many operating systems this is expressed by listing the application names, separated by the vertical bar character, for this reason often called the pipeline character. A well-known example is the use of a pagination application, such as more, providing the user control over the display of the output stream on the display.

Background edit

In most operating systems predating Unix, programs had to explicitly connect to the appropriate input and output devices. OS-specific intricacies caused this to be a tedious programming task. On many systems it was necessary to obtain control of environment settings, access a local file table, determine the intended data set, and handle hardware correctly in the case of a punch card reader, magnetic tape drive, disk drive, line printer, card punch, or interactive terminal.

One of Unix's several groundbreaking advances was abstract devices, which removed the need for a program to know or care what kind of devices it was communicating with[citation needed]. Older operating systems forced upon the programmer a record structure and frequently non-orthogonal data semantics and device control. Unix eliminated this complexity with the concept of a data stream: an ordered sequence of data bytes which can be read until the end of file. A program may also write bytes as desired and need not, and cannot easily declare their count or grouping.

Another Unix breakthrough was to automatically associate input and output to terminal keyboard and terminal display, respectively, by default[citation needed] — the program (and programmer) did absolutely nothing to establish input and output for a typical input-process-output program (unless it chose a different paradigm). In contrast, previous operating systems usually required some—often complex—job control language to establish connections, or the equivalent burden had to be orchestrated by the program.[citation needed]

Since Unix provided standard streams, the Unix C runtime environment was obliged to support it as well. As a result, most C runtime environments (and C's descendants), regardless of the operating system, provide equivalent functionality.

Standard input (stdin) edit

Standard input is a stream from which a program reads its input data. The program requests data transfers by use of the read operation. Not all programs require stream input. For example, the dir and ls programs (which display file names contained in a directory) may take command-line arguments, but perform their operations without any stream data input.

Unless redirected, standard input is inherited from the parent process. In the case of an interactive shell, that is usually associated with the keyboard.

The file descriptor for standard input is 0 (zero); the POSIX <unistd.h> definition is STDIN_FILENO; the corresponding C <stdio.h> variable is FILE* stdin; similarly, the C++ <iostream> variable is std::cin.

Standard output (stdout) edit

Standard output is a stream to which a program writes its output data. The program requests data transfer with the write operation. Not all programs generate output. For example, the file rename command (variously called mv, move, or ren) is silent on success.

Unless redirected, standard output is inherited from the parent process. In the case of an interactive shell, that is usually the text terminal which initiated the program.

The file descriptor for standard output is 1 (one); the POSIX <unistd.h> definition is STDOUT_FILENO; the corresponding C <stdio.h> variable is FILE* stdout; similarly, the C++ <iostream> variable is std::cout.

Standard error (stderr) edit

Standard error is another output stream typically used by programs to output error messages or diagnostics. It is a stream independent of standard output and can be redirected separately.

This solves the semi-predicate problem, allowing output and errors to be distinguished, and is analogous to a function returning a pair of values – see Semi-predicate problem: Multi valued return. The usual destination is the text terminal which started the program to provide the best chance of being seen even if standard output is redirected (so not readily observed). For example, output of a program in a pipeline is redirected to input of the next program or a text file, but errors from each program still go directly to the text terminal so they can be reviewed by the user in real time.[2]

It is acceptable and normal to direct standard output and standard error to the same destination, such as the text terminal. Messages appear in the same order as the program writes them, unless buffering is involved. For example, in common situations the standard error stream is unbuffered but the standard output stream is line-buffered; in this case, text written to standard error later may appear on the terminal earlier, if the standard output stream buffer is not yet full.

The file descriptor for standard error is defined by POSIX as 2 (two); the <unistd.h> header file provides the symbol STDERR_FILENO;[3] the corresponding C <stdio.h> variable is FILE* stderr. The C++ <iostream> standard header provides two variables associated with this stream: std::cerr and std::clog, the former being unbuffered and the latter using the same buffering mechanism as all other C++ streams.

Bourne-style shells allow standard error to be redirected to the same destination that standard output is directed to using

 2>&1 

csh-style shells allow standard error to be redirected to the same destination that standard output is directed to using

 >& 

Standard error was added to Unix in the 1970s after several wasted phototypesetting runs ended with error messages being typeset instead of displayed on the user's terminal.[4]

Timeline edit

1950s: Fortran edit

Fortran has the equivalent of Unix file descriptors: By convention, many Fortran implementations use unit numbers UNIT=5 for stdin, UNIT=6 for stdout and UNIT=0 for stderr. In Fortran-2003, the intrinsic ISO_FORTRAN_ENV module was standardized to include the named constants INPUT_UNIT, OUTPUT_UNIT, and ERROR_UNIT to portably specify the unit numbers.

! FORTRAN 77 example  PROGRAM MAIN  INTEGER NUMBER  READ(UNIT=5,*) NUMBER  WRITE(UNIT=6,'(A,I3)') ' NUMBER IS: ',NUMBER  END 
! Fortran 2003 example program main  use iso_fortran_env  implicit none  integer :: number  read (unit=INPUT_UNIT,*) number  write (unit=OUTPUT_UNIT,'(a,i3)') 'Number is: ', number end program 

1960: ALGOL 60 edit

ALGOL 60 was criticized for having no standard file access.[citation needed]

1968: ALGOL 68 edit

ALGOL 68's input and output facilities were collectively referred to as the transput.[5] Koster coordinated the definition of the transput standard. The model included three standard channels: stand in, stand out, and stand back.

Example
# ALGOL 68 example # main:( REAL number; getf(stand in,($g$,number)); printf(($"Number is: "g(6,4)"OR "$,number)); # OR # putf(stand out,($" Number is: "g(6,4)"!"$,number)); newline(stand out) ) 
Input: Output:
3.14159
Number is: +3.142 OR Number is: +3.142!

1970s: C and Unix edit

In the C programming language, the standard input, output, and error streams are attached to the existing Unix file descriptors 0, 1 and 2 respectively.[6] In a POSIX environment the <unistd.h> definitions STDIN_FILENO, STDOUT_FILENO or STDERR_FILENO should be used instead rather than magic numbers. File pointers stdin, stdout, and stderr are also provided.

Ken Thompson (designer and implementer of the original Unix operating system) modified sort in Version 5 Unix to accept "-" as representing standard input, which spread to other utilities and became a part of the operating system as a special file in Version 8. Diagnostics were part of standard output through Version 6, after which Dennis M. Ritchie created the concept of standard error.[7]

1995: Java edit

In Java, the standard streams are referred to by System.in (for stdin), System.out (for stdout), and System.err (for stderr).[8]

public static void main(String args[]) {  try {  BufferedReader br =   new BufferedReader(new InputStreamReader(System.in));  String s = br.readLine();  double number = Double.parseDouble(s);  System.out.println("Number is:" + number);  } catch (Exception e) {  System.err.println("Error:" + e.getMessage());  } } 

2000s: .NET edit

In C# and other .NET languages, the standard streams are referred to by System.Console.In (for stdin), System.Console.Out (for stdout) and System.Console.Error (for stderr).[9] Basic read and write capabilities for the stdin and stdout streams are also accessible directly through the class System.Console (e.g. System.Console.WriteLine() can be used instead of System.Console.Out.WriteLine()).

System.Console.In, System.Console.Out and System.Console.Error are System.IO.TextReader (stdin) and System.IO.TextWriter (stdout, stderr) objects, which only allow access to the underlying standard streams on a text basis. Full binary access to the standard streams must be performed through the System.IO.Stream objects returned by System.Console.OpenStandardInput(), System.Console.OpenStandardOutput() and System.Console.OpenStandardError() respectively.

// C# example public static int Main(string[] args) {  try {  string s = System.Console.In.ReadLine();  double number = double.Parse(s);  System.Console.Out.WriteLine("Number is: {0:F3}", number);  return 0;  // If Parse() threw an exception  } catch (ArgumentNullException) {   System.Console.Error.WriteLine("No number was entered!");  } catch (FormatException) {  System.Console.Error.WriteLine("The specified value is not a valid number!");  } catch (OverflowException) {  System.Console.Error.WriteLine("The specified number is too big!");  }  return -1; } 
' Visual Basic .NET example Public Function Main() As Integer  Try  Dim s As String = System.Console.[In].ReadLine()  Dim number As Double = Double.Parse(s)  System.Console.Out.WriteLine("Number is: {0:F3}", number)  Return 0  ' If Parse() threw an exception  Catch ex As System.ArgumentNullException  System.Console.[Error].WriteLine("No number was entered!")  Catch ex2 As System.FormatException  System.Console.[Error].WriteLine("The specified value is not a valid number!")  Catch ex3 As System.OverflowException  System.Console.[Error].WriteLine("The specified number is too big!")  End Try  Return -1 End Function 

When applying the System.Diagnostics.Process class one can use the instance properties StandardInput, StandardOutput, and StandardError of that class to access the standard streams of the process.

2000 - : Python (2 or 3) edit

The following example, written in Python, shows how to redirect the standard input both to the standard output and to a text file.

#!/usr/bin/env python import sys # Save the current stdout so that we can revert sys.stdout # after we complete our redirection stdin_fileno = sys.stdin stdout_fileno = sys.stdout # Redirect sys.stdout to the file sys.stdout = open('myfile.txt', 'w') ctr = 0 for inps in stdin_fileno:  ctrs = str(ctr)  # Prints to the redirected stdout ()  sys.stdout.write(ctrs + ") this is to the redirected --->" + inps + '\n')  # Prints to the actual saved stdout handler  stdout_fileno.write(ctrs + ") this is to the actual --->" + inps + '\n')  ctr = ctr + 1 # Close the file sys.stdout.close() # Restore sys.stdout to our old saved file handler sys.stdout = stdout_fileno 

GUIs edit

Graphical user interfaces (GUIs) do not always make use of the standard streams; they do when GUIs are wrappers of underlying scripts and/or console programs, for instance the Synaptic package manager GUI, which wraps apt commands in Debian and/or Ubuntu. GUIs created with scripting tools like Zenity and KDialog by KDE project[10] make use of stdin, stdout, and stderr, and are based on simple scripts rather than a complete GUI programmed and compiled in C/C++ using Qt, GTK, or other equivalent proprietary widget framework.

The Services menu, as implemented on NeXTSTEP and Mac OS X, is also analogous to standard streams. On these operating systems, graphical applications can provide functionality through a system-wide menu that operates on the current selection in the GUI, no matter in what application.

Some GUI programs, primarily on Unix, still write debug information to standard error. Others (such as many Unix media players) may read files from standard input. Popular Windows programs that open a separate console window in addition to their GUI windows are the emulators pSX and DOSBox.

GTK-server can use stdin as a communication interface with an interpreted program to realize a GUI.

The Common Lisp Interface Manager paradigm "presents" GUI elements sent to an extended output stream.

See also edit

References edit

  1. ^ D. M. Ritchie, "A Stream Input-Output System", AT&T Bell Laboratories Technical Journal, 68(8), October 1984.
  2. ^ "What are stdin, stdout and stderr in Linux? | CodePre.com". 2 December 2021. Retrieved 8 April 2022.
  3. ^ "<unistd.h>". The Open Group Base Specifications Issue 6—IEEE Std 1003.1, 2004 Edition. The Open Group. 2004.
  4. ^ Johnson, Steve (2013-12-11). "[TUHS] Graphic Systems C/A/T phototypesetter" (Mailing list). from the original on 2020-09-25. Retrieved 2020-11-07.
  5. ^ Revised Report on the Algorithmic Language Algol 68, Edited by A. van Wijngaarden, B.J. Mailloux, J.E.L. Peck, C.H.A. Koster, M. Sintzoff, C.H. Lindsey, L.G.L.T. Meertens and R.G. Fisker, http://www.softwarepreservation.org/projects/ALGOL/report/Algol68_revised_report-AB.pdf, Section 10.3
  6. ^ "Stdin(3): Standard I/O streams - Linux man page".
  7. ^ McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. 139.
  8. ^ "System (Java Platform SE 7)". Retrieved 20 July 2012.
  9. ^ "C# Reference Source, .NET Framework 4.7.1, mscorlib, Console class". referencesource.microsoft.com. Retrieved 2017-12-10.
  10. ^ Kißling, Kristian (2009). "Adding graphic elements to your scripts with Zenity and KDialog". Linux Magazine. Retrieved 2021-04-11.

Sources edit

  • "Standard Streams", The GNU C Library
  • KRONOS 2.1 Reference Manual, Control Data Corporation, Part Number 60407000, 1974
  • NOS Version 1 Applications Programmer's Instant, Control Data Corporation, Part Number 60436000, 1978
  • Level 68 Introduction to Programming on MULTICS 2021-02-25 at the Wayback Machine, Honeywell Corporation, 1981
  • , IBM Corporation, 1981
  • Lions' Commentary on UNIX Sixth Edition, John Lions, ISBN 1-57398-013-7, 1977
  • Console Class, .NET Framework Class Library, Microsoft Corporation, 2008

External links edit

  • Standard Input Definition - by The Linux Information Project
  • Standard Output Definition - by The Linux Information Project
  • Standard Error Definition - by The Linux Information Project

standard, streams, this, article, about, standard, file, descriptors, system, streams, streams, computer, programming, standard, streams, interconnected, input, output, communication, channels, between, computer, program, environment, when, begins, execution, . This article is about standard I O file descriptors For System V streams see STREAMS In computer programming standard streams are interconnected input and output communication channels 1 between a computer program and its environment when it begins execution The three input output I O connections are called standard input stdin standard output stdout and standard error stderr Originally I O happened via a physically connected system console input via keyboard output via monitor but standard streams abstract this When a command is executed via an interactive shell the streams are typically connected to the text terminal on which the shell is running but can be changed with redirection or a pipeline More generally a child process inherits the standard streams of its parent process Contents 1 Application 2 Background 3 Standard input stdin 4 Standard output stdout 5 Standard error stderr 6 Timeline 6 1 1950s Fortran 6 2 1960 ALGOL 60 6 3 1968 ALGOL 68 6 4 1970s C and Unix 6 5 1995 Java 6 6 2000s NET 6 7 2000 Python 2 or 3 6 8 GUIs 7 See also 8 References 9 Sources 10 External linksApplication edit nbsp The standard streams for input output and errorUsers generally know standard streams as input and output channels that handle data coming from an input device or that write data from the application The data may be text with any encoding or binary data In many modern systems the standard error stream of a program is redirected into a log file typically for error analysis purposes Streams may be used to chain applications meaning that the output stream of one program can be redirected to be the input stream to another application In many operating systems this is expressed by listing the application names separated by the vertical bar character for this reason often called the pipeline character A well known example is the use of a pagination application such as more providing the user control over the display of the output stream on the display Background editIn most operating systems predating Unix programs had to explicitly connect to the appropriate input and output devices OS specific intricacies caused this to be a tedious programming task On many systems it was necessary to obtain control of environment settings access a local file table determine the intended data set and handle hardware correctly in the case of a punch card reader magnetic tape drive disk drive line printer card punch or interactive terminal One of Unix s several groundbreaking advances was abstract devices which removed the need for a program to know or care what kind of devices it was communicating with citation needed Older operating systems forced upon the programmer a record structure and frequently non orthogonal data semantics and device control Unix eliminated this complexity with the concept of a data stream an ordered sequence of data bytes which can be read until the end of file A program may also write bytes as desired and need not and cannot easily declare their count or grouping Another Unix breakthrough was to automatically associate input and output to terminal keyboard and terminal display respectively by default citation needed the program and programmer did absolutely nothing to establish input and output for a typical input process output program unless it chose a different paradigm In contrast previous operating systems usually required some often complex job control language to establish connections or the equivalent burden had to be orchestrated by the program citation needed Since Unix provided standard streams the Unix C runtime environment was obliged to support it as well As a result most C runtime environments and C s descendants regardless of the operating system provide equivalent functionality Standard input stdin editStandard input is a stream from which a program reads its input data The program requests data transfers by use of the read operation Not all programs require stream input For example the dir and ls programs which display file names contained in a directory may take command line arguments but perform their operations without any stream data input Unless redirected standard input is inherited from the parent process In the case of an interactive shell that is usually associated with the keyboard The file descriptor for standard input is 0 zero the POSIX lt unistd h gt definition is STDIN FILENO the corresponding C lt stdio h gt variable is FILE stdin similarly the C lt iostream gt variable is std cin Standard output stdout editStandard output is a stream to which a program writes its output data The program requests data transfer with the write operation Not all programs generate output For example the file rename command variously called mv move or ren is silent on success Unless redirected standard output is inherited from the parent process In the case of an interactive shell that is usually the text terminal which initiated the program The file descriptor for standard output is 1 one the POSIX lt unistd h gt definition is STDOUT FILENO the corresponding C lt stdio h gt variable is FILE stdout similarly the C lt iostream gt variable is std cout Standard error stderr editStandard error is another output stream typically used by programs to output error messages or diagnostics It is a stream independent of standard output and can be redirected separately This solves the semi predicate problem allowing output and errors to be distinguished and is analogous to a function returning a pair of values see Semi predicate problem Multi valued return The usual destination is the text terminal which started the program to provide the best chance of being seen even if standard output is redirected so not readily observed For example output of a program in a pipeline is redirected to input of the next program or a text file but errors from each program still go directly to the text terminal so they can be reviewed by the user in real time 2 It is acceptable and normal to direct standard output and standard error to the same destination such as the text terminal Messages appear in the same order as the program writes them unless buffering is involved For example in common situations the standard error stream is unbuffered but the standard output stream is line buffered in this case text written to standard error later may appear on the terminal earlier if the standard output stream buffer is not yet full The file descriptor for standard error is defined by POSIX as 2 two the lt unistd h gt header file provides the symbol STDERR FILENO 3 the corresponding C lt stdio h gt variable is FILE stderr The C lt iostream gt standard header provides two variables associated with this stream std cerr and std clog the former being unbuffered and the latter using the same buffering mechanism as all other C streams Bourne style shells allow standard error to be redirected to the same destination that standard output is directed to using 2 gt amp 1 csh style shells allow standard error to be redirected to the same destination that standard output is directed to using gt amp Standard error was added to Unix in the 1970s after several wasted phototypesetting runs ended with error messages being typeset instead of displayed on the user s terminal 4 Timeline edit1950s Fortran edit Fortran has the equivalent of Unix file descriptors By convention many Fortran implementations use unit numbers UNIT 5 for stdin UNIT 6 for stdout and UNIT 0 for stderr In Fortran 2003 the intrinsic ISO FORTRAN ENV module was standardized to include the named constants INPUT UNIT OUTPUT UNIT and ERROR UNIT to portably specify the unit numbers FORTRAN 77 example PROGRAM MAIN INTEGER NUMBER READ UNIT 5 NUMBER WRITE UNIT 6 A I3 NUMBER IS NUMBER END Fortran 2003 example program main use iso fortran env implicit none integer number read unit INPUT UNIT number write unit OUTPUT UNIT a i3 Number is number end program 1960 ALGOL 60 edit ALGOL 60 was criticized for having no standard file access citation needed 1968 ALGOL 68 edit ALGOL 68 s input and output facilities were collectively referred to as the transput 5 Koster coordinated the definition of the transput standard The model included three standard channels stand in stand out and stand back Example ALGOL 68 example main REAL number getf stand in g number printf Number is g 6 4 OR number OR putf stand out Number is g 6 4 number newline stand out Input Output 3 14159 Number is 3 142 OR Number is 3 142 1970s C and Unix edit In the C programming language the standard input output and error streams are attached to the existing Unix file descriptors 0 1 and 2 respectively 6 In a POSIX environment the lt unistd h gt definitions STDIN FILENO STDOUT FILENO or STDERR FILENO should be used instead rather than magic numbers File pointers stdin stdout and stderr are also provided Ken Thompson designer and implementer of the original Unix operating system modified sort in Version 5 Unix to accept as representing standard input which spread to other utilities and became a part of the operating system as a special file in Version 8 Diagnostics were part of standard output through Version 6 after which Dennis M Ritchie created the concept of standard error 7 1995 Java edit In Java the standard streams are referred to by System in for stdin System out for stdout and System err for stderr 8 public static void main String args try BufferedReader br new BufferedReader new InputStreamReader System in String s br readLine double number Double parseDouble s System out println Number is number catch Exception e System err println Error e getMessage 2000s NET edit In C and other NET languages the standard streams are referred to by System Console In for stdin System Console Out for stdout and System Console Error for stderr 9 Basic read and write capabilities for the stdin and stdout streams are also accessible directly through the class System Console e g System Console WriteLine can be used instead of System Console Out WriteLine System Console In System Console Out and System Console Error are System IO TextReader stdin and System IO TextWriter stdout stderr objects which only allow access to the underlying standard streams on a text basis Full binary access to the standard streams must be performed through the System IO Stream objects returned by System Console OpenStandardInput System Console OpenStandardOutput and System Console OpenStandardError respectively C example public static int Main string args try string s System Console In ReadLine double number double Parse s System Console Out WriteLine Number is 0 F3 number return 0 If Parse threw an exception catch ArgumentNullException System Console Error WriteLine No number was entered catch FormatException System Console Error WriteLine The specified value is not a valid number catch OverflowException System Console Error WriteLine The specified number is too big return 1 Visual Basic NET example Public Function Main As Integer Try Dim s As String System Console In ReadLine Dim number As Double Double Parse s System Console Out WriteLine Number is 0 F3 number Return 0 If Parse threw an exception Catch ex As System ArgumentNullException System Console Error WriteLine No number was entered Catch ex2 As System FormatException System Console Error WriteLine The specified value is not a valid number Catch ex3 As System OverflowException System Console Error WriteLine The specified number is too big End Try Return 1 End Function When applying the System Diagnostics Process class one can use the instance properties StandardInput StandardOutput and StandardError of that class to access the standard streams of the process 2000 Python 2 or 3 edit The following example written in Python shows how to redirect the standard input both to the standard output and to a text file usr bin env python import sys Save the current stdout so that we can revert sys stdout after we complete our redirection stdin fileno sys stdin stdout fileno sys stdout Redirect sys stdout to the file sys stdout open myfile txt w ctr 0 for inps in stdin fileno ctrs str ctr Prints to the redirected stdout sys stdout write ctrs this is to the redirected gt inps n Prints to the actual saved stdout handler stdout fileno write ctrs this is to the actual gt inps n ctr ctr 1 Close the file sys stdout close Restore sys stdout to our old saved file handler sys stdout stdout fileno GUIs edit Graphical user interfaces GUIs do not always make use of the standard streams they do when GUIs are wrappers of underlying scripts and or console programs for instance the Synaptic package manager GUI which wraps apt commands in Debian and or Ubuntu GUIs created with scripting tools like Zenity and KDialog by KDE project 10 make use of stdin stdout and stderr and are based on simple scripts rather than a complete GUI programmed and compiled in C C using Qt GTK or other equivalent proprietary widget framework The Services menu as implemented on NeXTSTEP and Mac OS X is also analogous to standard streams On these operating systems graphical applications can provide functionality through a system wide menu that operates on the current selection in the GUI no matter in what application Some GUI programs primarily on Unix still write debug information to standard error Others such as many Unix media players may read files from standard input Popular Windows programs that open a separate console window in addition to their GUI windows are the emulators pSX and DOSBox GTK server can use stdin as a communication interface with an interpreted program to realize a GUI The Common Lisp Interface Manager paradigm presents GUI elements sent to an extended output stream See also editRedirection computing Stream computing Input output C file input output SYSIN and SYSOUT Standard streams in OpenVMSReferences edit D M Ritchie A Stream Input Output System AT amp T Bell Laboratories Technical Journal 68 8 October 1984 What are stdin stdout and stderr in Linux CodePre com 2 December 2021 Retrieved 8 April 2022 lt unistd h gt The Open Group Base Specifications Issue 6 IEEE Std 1003 1 2004 Edition The Open Group 2004 Johnson Steve 2013 12 11 TUHS Graphic Systems C A T phototypesetter Mailing list Archived from the original on 2020 09 25 Retrieved 2020 11 07 Revised Report on the Algorithmic Language Algol 68 Edited by A van Wijngaarden B J Mailloux J E L Peck C H A Koster M Sintzoff C H Lindsey L G L T Meertens and R G Fisker http www softwarepreservation org projects ALGOL report Algol68 revised report AB pdf Section 10 3 Stdin 3 Standard I O streams Linux man page McIlroy M D 1987 A Research Unix reader annotated excerpts from the Programmer s Manual 1971 1986 PDF Technical report CSTR Bell Labs 139 System Java Platform SE 7 Retrieved 20 July 2012 C Reference Source NET Framework 4 7 1 mscorlib Console class referencesource microsoft com Retrieved 2017 12 10 Kissling Kristian 2009 Adding graphic elements to your scripts with Zenity and KDialog Linux Magazine Retrieved 2021 04 11 Sources edit Standard Streams The GNU C Library KRONOS 2 1 Reference Manual Control Data Corporation Part Number 60407000 1974 NOS Version 1 Applications Programmer s Instant Control Data Corporation Part Number 60436000 1978 Level 68 Introduction to Programming on MULTICS Archived 2021 02 25 at the Wayback Machine Honeywell Corporation 1981 Evolution of the MVS Operating System IBM Corporation 1981 Lions Commentary on UNIX Sixth Edition John Lions ISBN 1 57398 013 7 1977 Console Class NET Framework Class Library Microsoft Corporation 2008External links editStandard Input Definition by The Linux Information Project Standard Output Definition by The Linux Information Project Standard Error Definition by The Linux Information Project Retrieved from https en wikipedia org w index php title Standard streams amp oldid 1181895231, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.