what is meant by flushll() in c programming?

Answer Posted / chauhan rakesh botad

The flushall function flushes all streams.
flushall clears all buffers associated with open input
streams and writes all buffers associated with open output
streams to their respective files. Any read operation
following flushall reads new data into the buffers from the
input files. Streams stay open after flushall executes.

Return Value

flushall returns an integer the number of open input and
output streams.

This is used to clear the buffer memory...for eg.we use
flush(stdin) before the getch() command and scanf command so
as to clear the memory space...sometimes it happens that
getch() takes 'enter' as a character ...to avoid this we use
the flush functions.

flushall clear any data in stream. it doesnt mean data gets
lost, instead all buffered data process and sent to target
output source.
like writing to a file using filestread and if we have write
some data in stream which is in buffer but not written in
file. as you call flushall it will write all data to file
and then clear the buffer(i.e memory space).

The fflush() and flushall() functions in the C run-time
library do not write file changes directly to disk. These
functions flush the file buffers provided by the library;
they do not flush the buffers the MS-DOS, OS/2, or Windows
NT operating systems provide at the system level. For
example, if an application calls fflush() but MS-DOS does
not write its buffers to disk before a system crash (or
equivalent event), information may still be lost. To address
this situation in MS-DOS, use the _commit() function after
you call fflush() or fflushall(). Calling _commit() causes
the operating system to flush to disk the buffer associated
with a file handle.

The OS/2 operating system provides two separate functions,
depending on the installed version of OS/2. In 16-bit OS/2
(versions 1.x), use the DosBufReset() function. In 32-bit
OS/2 (version 2.0), use the DosResetBuffer() function.

The Windows NT operating system provides the WIN32 API
FlushFileBuffers(). The _commit() function included with the
Visual C++ 32-bit Edition CRT calls FlushFileBuffers to
write buffered data to disk.

Microsoft C/C++ version 7.0 introduces the "c" mode option
for the fopen() function. When an application opens a file
and specifies the "c" mode, the run-time library writes the
contents of the file buffer to disk when the application
calls the fflush() or _flushall() function. The "c" mode
option is a Microsoft extension and is not part of the ANSI
standard for fopen().

To change the default behavior of the fflush() and
_flushall() functions, link your application with the
COMMODE.OBJ file provided by the products listed at the
beginning of this article. COMMODE.OBJ changes the global
commit flag such that calling fflush() or _flushall()
commits the file buffer to disk. This flag tells fflush() to
call _commit() to flush the low- level file when the stream
is flushed and _commit() in turn calls _dos_commit() for the
MS-DOS level file. By default flushing a stream does not
flush the low-level and MS-DOS level files.

Is This Answer Correct ?    19 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

When should the const modifier be used?

662


How can I manipulate individual bits?

613


In c language can we compile a program without main() function?

586


Explain what standard functions are available to manipulate strings?

615


Why pointers are used?

637






What language is c written?

583


what value is returned to operating system after program execution?

1608


Input is "rama loves rajesh and rajesh Loves rama also and rajesh wear gloves and bloves" To print output is count the numbers of times repeted the word love without case sensitive.

1604


Write program to remove duplicate in an array?

604


What is omp_num_threads?

587


write a program to rearrange the array such way that all even elements should come first and next come odd

1766


Explain what is the most efficient way to store flag values?

702


How can I copy just a portion of a string?

822


I need previous papers of CSC.......plz help out by posting them.......

1824


What is the difference between if else and switchstatement

1320