A<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2FFile%2FFile_Write</id>
		<title>C/File/File Write - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2FFile%2FFile_Write"/>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C/File/File_Write&amp;action=history"/>
		<updated>2026-04-09T10:28:48Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://cppe.ru/index.php?title=C/File/File_Write&amp;diff=90&amp;oldid=prev</id>
		<title> в 14:20, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C/File/File_Write&amp;diff=90&amp;oldid=prev"/>
				<updated>2010-05-25T14:20:56Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 14:20, 25 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://cppe.ru/index.php?title=C/File/File_Write&amp;diff=91&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C/File/File_Write&amp;diff=91&amp;oldid=prev"/>
				<updated>2010-05-25T10:22:12Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия: Импорт контента...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Read and write array into file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  float floatValue[5] = { 1.1F, 2.2F, 3.3F, 4.4F, 5.5F };&lt;br /&gt;
  int i;&lt;br /&gt;
  if((fp=fopen(&amp;quot;test&amp;quot;, &amp;quot;wb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  if(fwrite(floatValue, sizeof(float), 5, fp) != 5)&lt;br /&gt;
    printf(&amp;quot;File read error.&amp;quot;);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  /* read the values */&lt;br /&gt;
  if((fp=fopen(&amp;quot;test&amp;quot;, &amp;quot;rb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  if(fread(floatValue, sizeof(float), 5, fp) != 5) {&lt;br /&gt;
    if(feof(fp))&lt;br /&gt;
       printf(&amp;quot;Premature end of file.&amp;quot;);&lt;br /&gt;
    else&lt;br /&gt;
       printf(&amp;quot;File read error.&amp;quot;);&lt;br /&gt;
  }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  for(i=0; i&amp;lt;5; i++)&lt;br /&gt;
    printf(&amp;quot;%f &amp;quot;, floatValue[i]);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Redirect the printf to file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  printf(&amp;quot;This will display on the screen.\n&amp;quot;);&lt;br /&gt;
  if((fp=freopen(&amp;quot;OUT&amp;quot;, &amp;quot;w&amp;quot; ,stdout))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  printf(&amp;quot;This will be written to the file OUT.&amp;quot;);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Save and read string into a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
double d[10] = {&lt;br /&gt;
  1.2, 1.7, 1.3, 1.9, 0.7,&lt;br /&gt;
  1.4, 7.4, 0.0, 1.1, 5.5&lt;br /&gt;
};&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  int i;&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;wb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  for( i = 0; i &amp;lt; 10; i++)&lt;br /&gt;
    if(fwrite(&amp;amp;d[i], sizeof( double ), 1, fp) != 1) {&lt;br /&gt;
      printf(&amp;quot;Write error.\n&amp;quot;);&lt;br /&gt;
      exit(1);&lt;br /&gt;
    }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;rb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  /* clear the array */&lt;br /&gt;
  for(i = 0; i &amp;lt; 10; i++) &lt;br /&gt;
      d[i] = -1.0;&lt;br /&gt;
  for(i = 0; i &amp;lt; 10; i++)&lt;br /&gt;
    if(fread(&amp;amp;d[i], sizeof(double), 1, fp) != 1) {&lt;br /&gt;
      printf(&amp;quot;Read error.\n&amp;quot;);&lt;br /&gt;
      exit(1);&lt;br /&gt;
    }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  /* display the array */&lt;br /&gt;
  for(i = 0; i &amp;lt; 10; i++) &lt;br /&gt;
      printf(&amp;quot;%f &amp;quot;, d[i]);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Save and write different type of value into file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  int i;&lt;br /&gt;
  /* open file for output */&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;wb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  i = 10;&lt;br /&gt;
  if(fwrite(&amp;amp;i, sizeof(int), 1, fp) != 1) {&lt;br /&gt;
    printf(&amp;quot;Write error occurred.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  /* open file for input */&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;rb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  if(fread(&amp;amp;i, sizeof i, 1, fp) != 1) {&lt;br /&gt;
    printf(&amp;quot;Read error occurred.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  printf(&amp;quot;i is %d&amp;quot;,i);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Save string into file: fputs==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  char str[80];&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  if((fp = fopen(&amp;quot;TEST&amp;quot;, &amp;quot;w&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  do {&lt;br /&gt;
    printf(&amp;quot;Enter a string (CR to quit):\n&amp;quot;);&lt;br /&gt;
    gets(str);&lt;br /&gt;
    strcat(str, &amp;quot;\n&amp;quot;);  /* add a newline */&lt;br /&gt;
    fputs(str, fp);&lt;br /&gt;
  } while(*str!=&amp;quot;\n&amp;quot;);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Save text content into a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main(){&lt;br /&gt;
   char *proverbs[] ={&amp;quot;AAA\n&amp;quot;,&amp;quot;BBB\n&amp;quot;,&amp;quot;CCC\n&amp;quot;};&lt;br /&gt;
   char more[60] = &amp;quot;DDD\n&amp;quot;;&lt;br /&gt;
   FILE *pfile = NULL;&lt;br /&gt;
   int i = 0;&lt;br /&gt;
   char *filename = &amp;quot;C:\\myfile.txt&amp;quot;;&lt;br /&gt;
   pfile = fopen(filename, &amp;quot;w&amp;quot;);&lt;br /&gt;
   if(pfile == NULL)&lt;br /&gt;
   {&lt;br /&gt;
     printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
   }&lt;br /&gt;
   for(i = 0 ; i &amp;lt; sizeof proverbs/sizeof proverbs[0] ; i++)&lt;br /&gt;
     fputs(proverbs[i], pfile);&lt;br /&gt;
   fclose(pfile);&lt;br /&gt;
   pfile = fopen(filename, &amp;quot;a&amp;quot;);          /* Open it again to append data */&lt;br /&gt;
   if(pfile == NULL)&lt;br /&gt;
   {&lt;br /&gt;
     printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
   }&lt;br /&gt;
   fputs(more, pfile);&lt;br /&gt;
   fclose(pfile);&lt;br /&gt;
   pfile = fopen(filename, &amp;quot;r&amp;quot;);           /* Open the file to read it */&lt;br /&gt;
   if(pfile == NULL)&lt;br /&gt;
   {&lt;br /&gt;
     printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
   }&lt;br /&gt;
   while(fgets(more, 60, pfile) != NULL)&lt;br /&gt;
    printf(&amp;quot;\n%s&amp;quot;, more);&lt;br /&gt;
  fclose(pfile);&lt;br /&gt;
  remove(filename);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Use fprintf to save==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  if((fp=fopen(&amp;quot;test&amp;quot;, &amp;quot;wb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fprintf(fp, &amp;quot;this is a test %d %f&amp;quot;, 10, 20.01);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write a block of data to a stream: how to use fwrite==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
  FILE *file;&lt;br /&gt;
  char str[] = &amp;quot;This buffer contains 34 characters&amp;quot;;&lt;br /&gt;
  file = fopen (&amp;quot;my.txt&amp;quot; , &amp;quot;w&amp;quot;);&lt;br /&gt;
  fwrite (str , 1 , 34 , file);&lt;br /&gt;
  fclose (file);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Write and read the entire array in one step==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
double d[10] = {&lt;br /&gt;
  1.3, 1.7, 1.23, 1.9, 0.97,&lt;br /&gt;
  1.5, 7.4, 0.0, 1.01, 8.75&lt;br /&gt;
};&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  int i;&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;wb&amp;quot;)) == NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  /* write the entire array in one step */&lt;br /&gt;
  if( fwrite(d, sizeof d, 1, fp) != 1) {&lt;br /&gt;
    printf(&amp;quot;Write error.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  if((fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;rb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  /* clear the array */&lt;br /&gt;
  for(i = 0; i &amp;lt; 10; i++) &lt;br /&gt;
      d[i] = 0.0;&lt;br /&gt;
  /* read the entire array in one step */&lt;br /&gt;
  if(fread(d, sizeof d, 1, fp) != 1) {&lt;br /&gt;
    printf(&amp;quot;Read error.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  /* display the array */&lt;br /&gt;
  for(i = 0; i &amp;lt; 10; i++) &lt;br /&gt;
      printf(&amp;quot;%f &amp;quot;, d[i]);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write character to stdout: how to use fputchar==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/* fputchar example: alphabet writer */&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
   char c;&lt;br /&gt;
   for (c = &amp;quot;A&amp;quot; ; c &amp;lt;= &amp;quot;Z&amp;quot; ; c++)&lt;br /&gt;
     fputchar (c);&lt;br /&gt;
   return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write character to stdout: how to use putchar==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
  char c;&lt;br /&gt;
  &lt;br /&gt;
  for (c = &amp;quot;A&amp;quot; ; c &amp;lt;= &amp;quot;Z&amp;quot; ; c++) {&lt;br /&gt;
        putchar (c);&lt;br /&gt;
  }&lt;br /&gt;
  &lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write character to stream: how to use fputc==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
  FILE *file;&lt;br /&gt;
  char c;&lt;br /&gt;
  file = fopen (&amp;quot;my.txt&amp;quot;,&amp;quot;w&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
  if (file!=NULL)&lt;br /&gt;
  {&lt;br /&gt;
    for (c = &amp;quot;a&amp;quot; ; c &amp;lt;= &amp;quot;z&amp;quot; ; c++)&lt;br /&gt;
    {&lt;br /&gt;
      fputc (c , file);&lt;br /&gt;
    }&lt;br /&gt;
    fclose (file);&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write character to stream: how to use putc==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
  FILE *file;&lt;br /&gt;
  char c;&lt;br /&gt;
  file=fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;wt&amp;quot;);&lt;br /&gt;
  &lt;br /&gt;
  for (c = &amp;quot;a&amp;quot; ; c &amp;lt;= &amp;quot;z&amp;quot; ; c++) {&lt;br /&gt;
        putc (c , file);&lt;br /&gt;
  }&lt;br /&gt;
  fclose (file);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==write non string content==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  float f=12.23;&lt;br /&gt;
  if((fp=fopen(&amp;quot;test&amp;quot;, &amp;quot;wb&amp;quot;))==NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fwrite(&amp;amp;f, sizeof(float), 1, fp);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Write out file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
    int cur_char;&lt;br /&gt;
    FILE *out_file;&lt;br /&gt;
    out_file = fopen(&amp;quot;test.out&amp;quot;, &amp;quot;w&amp;quot;);&lt;br /&gt;
    if (out_file == NULL) {&lt;br /&gt;
        fprintf(stderr,&amp;quot;Can not open output file\n&amp;quot;);&lt;br /&gt;
        exit (8);&lt;br /&gt;
    }&lt;br /&gt;
    for (cur_char = 0; cur_char &amp;lt; 128; ++cur_char) {&lt;br /&gt;
        fputc(cur_char, out_file);&lt;br /&gt;
    }&lt;br /&gt;
    fclose(out_file);&lt;br /&gt;
    return (0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Write some non-character data to a disk file and read it back==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
int main(void)&lt;br /&gt;
{&lt;br /&gt;
  FILE *fp;&lt;br /&gt;
  double d = 1.23;&lt;br /&gt;
  int i = 10;&lt;br /&gt;
  long l = 13333023L;&lt;br /&gt;
  if(( fp = fopen(&amp;quot;my.txt&amp;quot;, &amp;quot;wb+&amp;quot;)) == NULL) {&lt;br /&gt;
    printf(&amp;quot;Cannot open file.\n&amp;quot;);&lt;br /&gt;
    exit(1);&lt;br /&gt;
  }&lt;br /&gt;
  fwrite(&amp;amp;d, sizeof(double), 1, fp);&lt;br /&gt;
  fwrite(&amp;amp;i, sizeof(int), 1, fp);&lt;br /&gt;
  fwrite(&amp;amp;l, sizeof(long), 1, fp);&lt;br /&gt;
  rewind(fp);&lt;br /&gt;
  fread(&amp;amp;d, sizeof(double), 1, fp);&lt;br /&gt;
  fread(&amp;amp;i, sizeof(int), 1, fp);&lt;br /&gt;
  fread(&amp;amp;l, sizeof(long), 1, fp);&lt;br /&gt;
  printf(&amp;quot;%f %d %ld&amp;quot;, d, i, l);&lt;br /&gt;
  fclose(fp);&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Write string to a stream: how to use fputs==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main ()&lt;br /&gt;
{&lt;br /&gt;
   FILE *file;&lt;br /&gt;
   char str[256];&lt;br /&gt;
   printf (&amp;quot;Enter string to append: &amp;quot;);&lt;br /&gt;
   fgets (str, 255, stdin);&lt;br /&gt;
   &lt;br /&gt;
   file = fopen (&amp;quot;my.txt&amp;quot;,&amp;quot;at&amp;quot;);&lt;br /&gt;
   fputs (str,file);&lt;br /&gt;
   fclose (file);&lt;br /&gt;
   return 0;&lt;br /&gt;
}&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Writing a file a character at a time==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
   char mystr[80]=&amp;quot;asdfasdf&amp;quot;;&lt;br /&gt;
   int i = 0;&lt;br /&gt;
   int lstr = 0;&lt;br /&gt;
   int mychar = 0;&lt;br /&gt;
   FILE *pfile = NULL;&lt;br /&gt;
   char *filename = &amp;quot;C:\\myfile.txt&amp;quot;;&lt;br /&gt;
   pfile = fopen(filename, &amp;quot;w&amp;quot;);&lt;br /&gt;
   if(pfile == NULL)&lt;br /&gt;
   {&lt;br /&gt;
     printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
   }&lt;br /&gt;
   lstr = strlen( mystr );&lt;br /&gt;
   for(i = lstr-1 ; i &amp;gt;= 0 ; i--)&lt;br /&gt;
     fputc(mystr[i], pfile);  /* Write string to file backwards */&lt;br /&gt;
   fclose(pfile);&lt;br /&gt;
   /* Open the file for reading */&lt;br /&gt;
   pfile = fopen(filename, &amp;quot;r&amp;quot;);&lt;br /&gt;
   if(pfile == NULL)&lt;br /&gt;
   {&lt;br /&gt;
     printf(&amp;quot;Error opening %s for reading. Program terminated.&amp;quot;, filename);&lt;br /&gt;
   }&lt;br /&gt;
   /* Read a character from the file and display it */&lt;br /&gt;
   while((mychar = fgetc(pfile)) != EOF)&lt;br /&gt;
     putchar(mychar);&lt;br /&gt;
   putchar(&amp;quot;\n&amp;quot;);&lt;br /&gt;
   fclose(pfile);&lt;br /&gt;
   remove(filename);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Writing names and phone numbers to a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
/*&lt;br /&gt;
Beginning C, Third Edition&lt;br /&gt;
 By Ivor Horton&lt;br /&gt;
 ISBN: 1-59059-253-0&lt;br /&gt;
 Published: Apr 2004&lt;br /&gt;
 Publisher: apress&lt;br /&gt;
*/&lt;br /&gt;
/*&lt;br /&gt;
  This solution uses a PhoneRecord structure with the name and number stored in&lt;br /&gt;
  arrays with a fixed size. This allows the file operations to be very simple.&lt;br /&gt;
  You can just read or write a PhoneRecord structure since its size is fixed.&lt;br /&gt;
  If you wanted to allocate space for the name and number dynamically, then&lt;br /&gt;
  you would have to explicitly write the name and number strings as well as the&lt;br /&gt;
  PhoneRecord structure to the file. You would also need to include the length of each&lt;br /&gt;
  data item in the file so you knew how much to read back.&lt;br /&gt;
*/&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#define FIRST_NAME_LENGTH  31&lt;br /&gt;
#define SECOND_NAME_LENGTH 51&lt;br /&gt;
#define NUMBER_LENGTH      21&lt;br /&gt;
#define TRUE                1&lt;br /&gt;
#define FALSE               0&lt;br /&gt;
/* Structure defining a name */&lt;br /&gt;
struct Name&lt;br /&gt;
{&lt;br /&gt;
  char firstname[FIRST_NAME_LENGTH];&lt;br /&gt;
  char secondname[SECOND_NAME_LENGTH];&lt;br /&gt;
};&lt;br /&gt;
/* Structure defining a phone record */&lt;br /&gt;
struct PhoneRecord&lt;br /&gt;
{&lt;br /&gt;
  struct Name name;&lt;br /&gt;
  char number[NUMBER_LENGTH];&lt;br /&gt;
};&lt;br /&gt;
/* Function prototypes */&lt;br /&gt;
struct PhoneRecord read_phonerecord();              /* Read a name and number from the keyboard     */&lt;br /&gt;
struct Name read_name();                            /* Read a name from the keyboard                */&lt;br /&gt;
void show_record(struct PhoneRecord record);        /* Output name and number from a phone record   */&lt;br /&gt;
struct PhoneRecord find_numbers(struct Name name);  /* Find numbers corresponding to a given name   */&lt;br /&gt;
void add_record();                                  /* Add a new name and number                    */&lt;br /&gt;
void delete_records(struct Name name);              /* Delete records for a given name              */&lt;br /&gt;
void list_records();                                /* List all the records in the file             */&lt;br /&gt;
void show_operations();                             /* Displays operations supported by the program */&lt;br /&gt;
int equals(struct Name name1, struct Name name2);   /* Compare two names for equality               */&lt;br /&gt;
/* Global variables */&lt;br /&gt;
FILE *pFile = NULL;                                 /* File pointer                           */&lt;br /&gt;
char *filename = &amp;quot;C:\\records.bin&amp;quot;;                 /* Name of the file holding the records   */&lt;br /&gt;
char answer = &amp;quot;n&amp;quot;;                                  /* Stores input responses                 */&lt;br /&gt;
&lt;br /&gt;
void main()&lt;br /&gt;
{&lt;br /&gt;
  show_operations();                                /* Display the available operations */     &lt;br /&gt;
  for(;;)&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;\nEnter a letter to select an operation: &amp;quot;);&lt;br /&gt;
    scanf(&amp;quot; %c&amp;quot;, &amp;amp;answer);&lt;br /&gt;
    switch(toupper(answer))&lt;br /&gt;
    {&lt;br /&gt;
      case &amp;quot;A&amp;quot;:                                     /* Add a new name and number record  */&lt;br /&gt;
        add_record();&lt;br /&gt;
        break;&lt;br /&gt;
      case &amp;quot;D&amp;quot;:                                     /* Delete records for a given name   */&lt;br /&gt;
        delete_records(read_name());&lt;br /&gt;
        break;&lt;br /&gt;
      case &amp;quot;F&amp;quot;:                                     /* Find the numbers for a given name */&lt;br /&gt;
        find_numbers(read_name());&lt;br /&gt;
        break;&lt;br /&gt;
      case &amp;quot;L&amp;quot;:                                     /* List all the name/number records  */&lt;br /&gt;
        list_records();&lt;br /&gt;
        break;&lt;br /&gt;
      case &amp;quot;Q&amp;quot;:                                     /* Quit the program                 */&lt;br /&gt;
        return;&lt;br /&gt;
      default:&lt;br /&gt;
        printf(&amp;quot;\nInvalid selection try again.&amp;quot;);&lt;br /&gt;
        show_operations();&lt;br /&gt;
        break;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
/* Reads a name and number from the keyboard and creates a PhoneRecord structure */&lt;br /&gt;
struct PhoneRecord read_phonerecord()&lt;br /&gt;
{&lt;br /&gt;
  struct PhoneRecord record;    &lt;br /&gt;
  record.name = read_name();&lt;br /&gt;
  printf(&amp;quot;Enter the number: &amp;quot;);&lt;br /&gt;
  scanf(&amp;quot; %[ 0123456789]&amp;quot;,record.number);  /* Read the number - including spaces */&lt;br /&gt;
  return record;&lt;br /&gt;
}&lt;br /&gt;
/* Outputs the name and number from a phone record */&lt;br /&gt;
void show_record(struct PhoneRecord record)&lt;br /&gt;
{&lt;br /&gt;
  printf(&amp;quot;\n%s %s   %s&amp;quot;, record.name.firstname,record.name.secondname, record.number);&lt;br /&gt;
}&lt;br /&gt;
/* Add a new name and number */&lt;br /&gt;
void add_record()&lt;br /&gt;
{&lt;br /&gt;
  struct PhoneRecord record;&lt;br /&gt;
  if((pFile = fopen(filename, &amp;quot;a+&amp;quot;)) == NULL)  /* Open/create file to be written in append mode */&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  record = read_phonerecord();                 /* Read the name and number */  &lt;br /&gt;
  fwrite(&amp;amp;record, sizeof record, 1, pFile);&lt;br /&gt;
  fclose(pFile);                               /* Close file               */ &lt;br /&gt;
  printf(&amp;quot;\nNew record added.&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
/* Read a name from the keyboard and create a Name structure for it */&lt;br /&gt;
struct Name read_name()&lt;br /&gt;
{&lt;br /&gt;
  struct Name name;&lt;br /&gt;
    printf(&amp;quot;Enter a first name: &amp;quot;);&lt;br /&gt;
    scanf(&amp;quot; %s&amp;quot;, &amp;amp;name.firstname);&lt;br /&gt;
    printf(&amp;quot;Enter a second name: &amp;quot;);&lt;br /&gt;
    scanf(&amp;quot; %s&amp;quot;, &amp;amp;name.secondname);&lt;br /&gt;
  return name;&lt;br /&gt;
}&lt;br /&gt;
/* Delete records for a given name */&lt;br /&gt;
/* To delete one or more records we can copy &lt;br /&gt;
   the contents of the existing file to a new &lt;br /&gt;
   file, omitting the records that are to be&lt;br /&gt;
   deleted. We can then delete the old file and&lt;br /&gt;
   rename the new file to have the old file&lt;br /&gt;
   name.&lt;br /&gt;
*/&lt;br /&gt;
void delete_records(struct Name name)&lt;br /&gt;
{&lt;br /&gt;
  FILE *pNewFile = NULL;&lt;br /&gt;
  char *pnewfilename = NULL;&lt;br /&gt;
  struct PhoneRecord record;&lt;br /&gt;
  if((pFile = fopen(filename, &amp;quot;r&amp;quot;)) == NULL)         /* Open current file to read it */&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for reading. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  pnewfilename = tmpnam(NULL);                       /* Create temporary file name      */&lt;br /&gt;
  if((pNewFile = fopen(pnewfilename, &amp;quot;w&amp;quot;)) == NULL)  /* Open temporary file to write it */&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, pnewfilename);&lt;br /&gt;
    fclose(pFile);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  /* Copy existing file contents to temporary file, omitting deleted records */&lt;br /&gt;
  for(;;)&lt;br /&gt;
  {&lt;br /&gt;
    fread(&amp;amp;record, sizeof record, 1, pFile);      /* Read a record      */&lt;br /&gt;
    if(feof(pFile))                               /* End of file read ? */&lt;br /&gt;
      break;                                      /* Yes-quit copy loop */&lt;br /&gt;
    if(equals(name, record.name))                 /* Is the record this name ?      */&lt;br /&gt;
    {&lt;br /&gt;
      printf(&amp;quot;\nFound a record:&amp;quot;);                /* Ys, so it&amp;quot;s a delete candidate */&lt;br /&gt;
      show_record(record);&lt;br /&gt;
      printf(&amp;quot;\nDo you really want to delete it(y or n)? &amp;quot;);&lt;br /&gt;
      scanf(&amp;quot; %c&amp;quot;, &amp;amp;answer);&lt;br /&gt;
      if(tolower(answer) == &amp;quot;y&amp;quot;)                  /* If it&amp;quot;s to be deleted */&lt;br /&gt;
        continue;                                 /* Skip the copying      */&lt;br /&gt;
    }&lt;br /&gt;
    fwrite(&amp;amp;record, sizeof record, 1, pNewFile);  /* copy current record   */&lt;br /&gt;
  }&lt;br /&gt;
  fclose(pFile);&lt;br /&gt;
  fclose(pNewFile);&lt;br /&gt;
  if((pNewFile = fopen(pnewfilename, &amp;quot;r&amp;quot;)) == NULL)   /* Open temporary file to read it */&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for reading. Program terminated.&amp;quot;, pnewfilename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  if((pFile = fopen(filename, &amp;quot;w&amp;quot;))==NULL)            /* Open original file to write it */&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  /* Copy contents of new temporary file back to old file          */&lt;br /&gt;
  /* This overwrites the original contents because the mode is &amp;quot;w&amp;quot; */&lt;br /&gt;
  for(;;)&lt;br /&gt;
  {&lt;br /&gt;
    fread(&amp;amp;record, sizeof record, 1, pNewFile);   /* Read temporary file */&lt;br /&gt;
    if(feof(pNewFile))                            /* If we read EOF */&lt;br /&gt;
      break;                                      /* We are done    */&lt;br /&gt;
    fwrite(&amp;amp;record, sizeof record, 1, pFile);     /* Write record to original file */&lt;br /&gt;
  }&lt;br /&gt;
  fclose(pFile);                       /* Close the original file   */&lt;br /&gt;
  fclose(pNewFile);                    /* Close the temporary file  */&lt;br /&gt;
  remove(pnewfilename);                /* Delete the temporary file */&lt;br /&gt;
  printf(&amp;quot;Delete complete.&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
/* List all the records in the file */&lt;br /&gt;
void list_records()&lt;br /&gt;
{&lt;br /&gt;
  struct PhoneRecord record;&lt;br /&gt;
  int file_empty = TRUE;    /* File empty flag */&lt;br /&gt;
  if((pFile = fopen(filename, &amp;quot;r&amp;quot;)) == NULL)   /* Open the file to read it */      &lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for reading. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  /* List the file contents */&lt;br /&gt;
  for(;;)&lt;br /&gt;
  {&lt;br /&gt;
    fread(&amp;amp;record, sizeof record, 1, pFile);&lt;br /&gt;
    if(feof(pFile))&lt;br /&gt;
      break;&lt;br /&gt;
    file_empty = FALSE;          /* We got a record so set empty flag false */&lt;br /&gt;
    show_record(record);         /* output the record                       */&lt;br /&gt;
  }&lt;br /&gt;
  fclose(pFile);                 /* Close the file */&lt;br /&gt;
  /* Check whether there were any records */&lt;br /&gt;
  if(file_empty)&lt;br /&gt;
    printf(&amp;quot;The file contains no records.\n&amp;quot;);&lt;br /&gt;
  else&lt;br /&gt;
    printf(&amp;quot;\n&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
/* Displays the operations that are supported by the program */&lt;br /&gt;
void show_operations()&lt;br /&gt;
{&lt;br /&gt;
  printf(&amp;quot;The operations available are:&amp;quot;&lt;br /&gt;
    &amp;quot;\nA: Add a new name and number entry.&amp;quot;&lt;br /&gt;
    &amp;quot;\nD: Delete all existing entries for a name.&amp;quot;&lt;br /&gt;
    &amp;quot;\nF: Find the number(s) for a given name.&amp;quot;&lt;br /&gt;
    &amp;quot;\nL: List all the entries in the file.&amp;quot;&lt;br /&gt;
    &amp;quot;\nQ: Quit the program.&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
/* Find numbers corresponding to a given name */&lt;br /&gt;
struct PhoneRecord find_numbers(struct Name name) &lt;br /&gt;
{&lt;br /&gt;
  struct PhoneRecord record;&lt;br /&gt;
  int name_found = FALSE;                    /* Name found flag */&lt;br /&gt;
  if((pFile = fopen(filename, &amp;quot;r&amp;quot;)) == NULL) /* Open the file to read it */      &lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for reading. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  /* Search the records read from the file */&lt;br /&gt;
  for(;;)&lt;br /&gt;
  {&lt;br /&gt;
    fread(&amp;amp;record, sizeof record, 1, pFile);  /* Read a record */&lt;br /&gt;
    if(feof(pFile))&lt;br /&gt;
      break;&lt;br /&gt;
   if(equals(name,record.name))               /* Is it the name requested? */&lt;br /&gt;
   {&lt;br /&gt;
     if(!name_found)                          /* Is this the first time we found it? */&lt;br /&gt;
     {&lt;br /&gt;
       name_found = TRUE;                        /* Yes so set flag to true */&lt;br /&gt;
       printf(&amp;quot;The numbers for this name are:&amp;quot;); /* Output initial message  */&lt;br /&gt;
     }&lt;br /&gt;
     printf(&amp;quot;\n%s&amp;quot;,record.number);               /* Output the number       */&lt;br /&gt;
   }&lt;br /&gt;
  }&lt;br /&gt;
  fclose(pFile);                                 /* Close the file */&lt;br /&gt;
  /* Check for name not found */&lt;br /&gt;
  if(!name_found)&lt;br /&gt;
    printf(&amp;quot;The name was not found.\n&amp;quot;);&lt;br /&gt;
  else&lt;br /&gt;
    printf(&amp;quot;\n&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
/* Compare two names for equality */&lt;br /&gt;
int equals(struct Name name1, struct Name name2)&lt;br /&gt;
{&lt;br /&gt;
  return (strcmp(name1.firstname, name2.firstname)==0) &amp;amp;&amp;amp; (strcmp(name1.secondname, name2.secondname)==0);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Writing strings to a file==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
#include &amp;lt;stdlib.h&amp;gt;&lt;br /&gt;
#include &amp;lt;string.h&amp;gt;&lt;br /&gt;
#define BUFFER_SIZE 50&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  FILE *pFile = NULL;&lt;br /&gt;
  char *filename = &amp;quot;C:\\myfile.txt&amp;quot;;&lt;br /&gt;
  char buffer[80] = &amp;quot;asdf&amp;quot;;&lt;br /&gt;
  int buffer_size = BUFFER_SIZE;&lt;br /&gt;
  size_t str_length = 0;&lt;br /&gt;
  pFile = fopen(filename, &amp;quot;w&amp;quot;);&lt;br /&gt;
  if(pFile == NULL)&lt;br /&gt;
  {&lt;br /&gt;
    printf(&amp;quot;Error opening %s for writing. Program terminated.&amp;quot;, filename);&lt;br /&gt;
    abort();&lt;br /&gt;
  }&lt;br /&gt;
  str_length = strlen(buffer);&lt;br /&gt;
  fwrite(&amp;amp;str_length, sizeof(size_t), 1, pFile);&lt;br /&gt;
  fwrite(buffer, str_length, 1, pFile);&lt;br /&gt;
  fclose(pFile);&lt;br /&gt;
  printf(&amp;quot;\nFile write complete\n&amp;quot;);&lt;br /&gt;
  if(buffer != NULL)&lt;br /&gt;
    free(buffer);&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>