version 1.11, 2003/04/20 08:01:28 |
version 1.17, 2014/04/09 05:34:30 |
|
|
@comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/io.texi,v 1.10 2003/04/19 15:44:58 noro Exp $ |
@comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/io.texi,v 1.16 2008/07/17 15:01:10 iwane Exp $ |
\BJP |
\BJP |
@node $BF~=PNO(B,,, $BAH$_9~$_H!?t(B |
@node $BF~=PNO(B,,, $BAH$_9~$_H!?t(B |
@section $BF~=PNO(B |
@section $BF~=PNO(B |
|
|
* bsave bload:: |
* bsave bload:: |
* bload27:: |
* bload27:: |
* print:: |
* print:: |
|
* access:: |
|
* remove_file:: |
* open_file close_file get_line get_byte put_byte purge_stdin:: |
* open_file close_file get_line get_byte put_byte purge_stdin:: |
@end menu |
@end menu |
|
|
Line 99 line of the input file is strongly recommended. |
|
Line 101 line of the input file is strongly recommended. |
|
$B<B:]$N%W%m%0%i%`$N=q$-J}$O(B, @pxref{$B%f!<%68@8l(B Asir}. |
$B<B:]$N%W%m%0%i%`$N=q$-J}$O(B, @pxref{$B%f!<%68@8l(B Asir}. |
$B%F%-%9%H%U%!%$%k$rFI$_9~$`>l9g(B, @code{cpp} |
$B%F%-%9%H%U%!%$%k$rFI$_9~$`>l9g(B, @code{cpp} |
$B$rDL$9$N$G(B, C $B$N%W%m%0%i%`F1MM(B @code{#include}, @code{#define} $B$r;H$&$3$H$,$G$-$k(B. |
$B$rDL$9$N$G(B, C $B$N%W%m%0%i%`F1MM(B @code{#include}, @code{#define} $B$r;H$&$3$H$,$G$-$k(B. |
|
unix $BHG$G$O(B, $B%7%9%F%`$K%$%s%9%H!<%k$5$l$F$$$k(B @code{cpp} $B$rMxMQ$7$F$$$k(B. |
|
Windows $BHG$G$O(B @code{mcpp} @url{http://mcpp.sourceforge.net} $B$rMQ$$$F$$$k(B. |
|
$B$3$l$K$O9T$ND9$5$K@)8B$,$"$k$N$GCm0U(B. |
|
unix/OpenXM $BHG(B(Mac $BMQ(B cfep/asir $B$r4^$`(B)$B$G$O(B @code{OpenXM/bin/ox_cpp} $B$rMQ$$$F$$$k(B. |
|
$B$3$l$O(B Portable C compiler @url{http://pcc.ludd.ltu.se} $B$KImB0$9$k(B @code{cpp} $B$G$"$k(B. |
@item |
@item |
$B;XDj$7$?%U%!%$%k$,B8:_$7$?;~$K$O(B 1 $B$rJV$7(B, $BB8:_$7$J$+$C$?;~$O(B 0 $B$rJV$9(B. |
$B;XDj$7$?%U%!%$%k$,B8:_$7$?;~$K$O(B 1 $B$rJV$7(B, $BB8:_$7$J$+$C$?;~$O(B 0 $B$rJV$9(B. |
@item |
@item |
Line 125 See @ref{User language Asir} for practical programming |
|
Line 132 See @ref{User language Asir} for practical programming |
|
Since text files are read through @code{cpp}, |
Since text files are read through @code{cpp}, |
the user can use, as in C programs, @code{#include} and @code{#define} |
the user can use, as in C programs, @code{#include} and @code{#define} |
in @b{Asir} program source codes. |
in @b{Asir} program source codes. |
|
The @code{cpp} which is installed to the system with a C compler is used in the unix version. |
|
The @code{mcpp} @url{http://mcpp.sourceforge.net} is used in the Windows version. |
|
Note that the length of a line has a limit for an input @code{mcpp}. |
|
The @code{OpenXM/bin/ox_cpp} is used in the unix/OpenXM version |
|
(including cfep/asir for MacOS X). |
|
This is the @code{cpp} distributed with the Portable C compiler @url{http://pcc.ludd.ltu.se}. |
@item |
@item |
It returns 1 if the designated file exists, 0 otherwise. |
It returns 1 if the designated file exists, 0 otherwise. |
@item |
@item |
Line 492 On Windows one has to use @samp{/} as the separator of |
|
Line 505 On Windows one has to use @samp{/} as the separator of |
|
@var{obj} $B$rI>2A$7$FI=<($9$k(B. |
@var{obj} $B$rI>2A$7$FI=<($9$k(B. |
@item |
@item |
$BBh(B 2 $B0z?t$,$J$$$+(B, $B$^$?$O(B 0, 2 $B0J30$N>l9g(B, $B2~9T$9$k(B. |
$BBh(B 2 $B0z?t$,$J$$$+(B, $B$^$?$O(B 0, 2 $B0J30$N>l9g(B, $B2~9T$9$k(B. |
$BBh(B 2 $B0z?t$,(B 1 $B$N>l9g(B, $B2~9T$;$:(B, $B=PNO$O%P%C%U%!$K=q$-9~$^$l(B, |
$BBh(B 2 $B0z?t$,(B 0 $B$N>l9g(B, $B2~9T$;$:(B, $B=PNO$O%P%C%U%!$K=q$-9~$^$l(B, |
$B%P%C%U%!$O%U%i%C%7%e$5$l$J$$(B. |
$B%P%C%U%!$O%U%i%C%7%e$5$l$J$$(B. |
$BBh(B 2 $B0z?t$,(B 2 $B$N>l9g(B, $B2~9T$7$J$$$,%P%C%U%!$O%U%i%C%7%e$5$l$k(B. |
$BBh(B 2 $B0z?t$,(B 2 $B$N>l9g(B, $B2~9T$7$J$$$,%P%C%U%!$O%U%i%C%7%e$5$l$k(B. |
@item |
@item |
|
|
xyz123gahaha |
xyz123gahaha |
@end example |
@end example |
|
|
|
\JP @node access,,, $BF~=PNO(B |
|
\EG @node access,,, Inputs and Outputs |
|
@subsection @code{access} |
|
@findex access |
|
|
|
@table @t |
|
@item access(@var{file}) |
|
\JP :: @var{file} $B$NB8:_$r%F%9%H$9$k(B. |
|
\EG :: testing an existence of @var{file}. |
|
@end table |
|
|
|
@table @var |
|
@item return |
|
(1|0) |
|
@item file |
|
\JP $B%U%!%$%kL>(B |
|
\EG filename |
|
@end table |
|
|
|
@itemize @bullet |
|
\BJP |
|
@item |
|
@var{file} $B$,B8:_$9$l$P(B 1, $BB8:_$7$J$1$l$P(B 0 $B$rJV$9(B. |
|
\E |
|
@end itemize |
|
|
|
\JP @node remove_file,,, $BF~=PNO(B |
|
\EG @node remove_file,,, Inputs and Outputs |
|
@subsection @code{remove_file} |
|
@findex remove_file |
|
|
|
@table @t |
|
@item remove_file(@var{file}) |
|
\JP :: @var{file} $B$r>C5n$9$k(B. |
|
\EG :: Delete an file @var{file}. |
|
@end table |
|
|
|
@table @var |
|
@item return |
|
1 |
|
@item file |
|
\JP $B%U%!%$%kL>(B |
|
\EG filename |
|
@end table |
|
|
\JP @node open_file close_file get_line get_byte put_byte purge_stdin,,, $BF~=PNO(B |
\JP @node open_file close_file get_line get_byte put_byte purge_stdin,,, $BF~=PNO(B |
\EG @node open_file close_file get_line get_byte put_byte purge_stdin,,, Inputs and Outputs |
\EG @node open_file close_file get_line get_byte put_byte purge_stdin,,, Inputs and Outputs |
@subsection @code{open_file}, @code{close_file}, @code{get_line}, @code{get_byte}, @code{put_byte}, @code{purge_stdin} |
@subsection @code{open_file}, @code{close_file}, @code{get_line}, @code{get_byte}, @code{put_byte}, @code{purge_stdin} |
|
|
\JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$K(B 1 $B%P%$%H(B @var{c} $B$r=q$/(B. |
\JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$K(B 1 $B%P%$%H(B @var{c} $B$r=q$/(B. |
\EG :: Writes a byte @var{c} to the file indicated by a descriptor @var{num}. |
\EG :: Writes a byte @var{c} to the file indicated by a descriptor @var{num}. |
@item purge_stdin() |
@item purge_stdin() |
@item purge_stdin() |
|
\JP :: $BI8=`F~NO$N%P%C%U%!$r%/%j%"$9$k(B. |
\JP :: $BI8=`F~NO$N%P%C%U%!$r%/%j%"$9$k(B. |
\EG :: Clears the buffer for the standard input. |
\EG :: Clears the buffer for the standard input. |
@end table |
@end table |
|
|
$BMQ$N>l9g(B @code{"w"}, $BKvHxDI2C$N>l9g(B @code{"a"} $B$J$I(B. |
$BMQ$N>l9g(B @code{"w"}, $BKvHxDI2C$N>l9g(B @code{"a"} $B$J$I(B. |
$B@.8y$7$?>l9g(B, $B%U%!%$%k<1JL;R$H$7$FHsIi@0?t$rJV$9(B. $B<:GT$N>l9g%(%i!<$H$J$k(B. |
$B@.8y$7$?>l9g(B, $B%U%!%$%k<1JL;R$H$7$FHsIi@0?t$rJV$9(B. $B<:GT$N>l9g%(%i!<$H$J$k(B. |
$BITMW$K$J$C$?%U%!%$%k$O(B @code{close_file()} $B$G%/%m!<%:$9$k(B. |
$BITMW$K$J$C$?%U%!%$%k$O(B @code{close_file()} $B$G%/%m!<%:$9$k(B. |
|
$BFCJL$J%U%!%$%kL>(B unix://stdin, unix://stdout, unix://stderr $B$rM?$($k$H(B |
|
$B$=$l$>$lI8=`F~NO(B, $BI8=`=PNO(B, $BI8=`%(%i!<=PNO$r%*!<%W%s$9$k(B. |
|
$B$3$N>l9g%b!<%I;XDj$OL5;k$5$l$k(B. |
@item @code{get_line()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B9TFI$_(B, |
@item @code{get_line()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B9TFI$_(B, |
$BJ8;zNs$H$7$FJV$9(B. $B0z?t$,$J$$>l9g(B, $BI8=`F~NO$+$i(B 1 $B9TFI$`(B. |
$BJ8;zNs$H$7$FJV$9(B. $B0z?t$,$J$$>l9g(B, $BI8=`F~NO$+$i(B 1 $B9TFI$`(B. |
@item @code{get_byte()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B%P%$%HFI$_(B |
@item @code{get_byte()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B%P%$%HFI$_(B |
Line 615 The stream pointer is set at the end of the file. |
|
Line 675 The stream pointer is set at the end of the file. |
|
If successful, it returns a non-negative integer as the file descriptor. |
If successful, it returns a non-negative integer as the file descriptor. |
Otherwise the system error function is called. |
Otherwise the system error function is called. |
Unnecessary files should be closed by @code{close_file()}. |
Unnecessary files should be closed by @code{close_file()}. |
|
If the special file name unix://stdin or unix://stdout or unix://stderr |
|
is given, it returns the file descriptor for the standard input or |
|
the standard output or the standard error stream respectively. |
|
The mode argument is ignored in this case. |
@item @code{get_line()} reads a line from an opened file and returns the |
@item @code{get_line()} reads a line from an opened file and returns the |
line as a string. If no argument is supplied, it reads a line from the |
line as a string. If no argument is supplied, it reads a line from the |
standard input. |
standard input. |