Data can be written to the file using fputc and fprintf. Command Line Arguments with C, the parameter argv is the argument vector which is an array of pointers to strings that represent the actual parameters passed

Files Recovery Software
Home Contact Details Customer Support Download Demo Products  

 
 

Writing to Files

Data can be written to the file using fputc and fprintf. The following example uses the fgetc and fputc functions to make a copy of a text file.

#include <stdio.h>
int main()
{
FILE *in, *out;
int key;

if ((in = fopen("tarun.txt", "r")) == NULL)
{
puts("Unable to open the file");
return 0;
}

out = fopen("copy.txt", "w");

while (!feof(in))
{
key = fgetc(in);

if (!feof(in))
fputc(key, out);
}

fclose(in);
fclose(out);

return 0;
}

The fprintf function can be used to write formatted data to a file.

fprintf(out, "Date: %02d/%02d/%02d\n",
day, month, year);

Command Line Arguments with C

The ANSI C definition for declaring the main( ) function is either:

int main() or int main(int argc, char **argv)

The second version allows arguments to be passed from the command line. The parameter argc is an argument counter and contains the number of parameters passed from the command line. The parameter argv is the argument vector which is an array of pointers to strings that represent the actual parameters passed.

The following example allows any number of arguments to be passed from the command line and prints them out. argv[0] is the actual program. The program must be run from a command prompt.

#include <stdio.h>
int main(int argc, char **argv)
{

int counter;
puts("The arguments to the program are:");

for (counter=0; counter<argc; counter++)
puts(argv[counter]);
return 0;
}

If the program name was count.c, it could be called as follows from the command line.

count 3
or
count 7
or
count 192 etc.

The next example uses the file handling routines to copy a text file to a new file. For example the command line argument could be called as:

txtcpy one.txt two.txt

#include <stdio.h>

int main(int argc, char **argv)
{
FILE *in, *out;
int key;

if (argc < 3)
{
puts("Usage: txtcpy source destination\n");
puts("The source must be an existing file");
puts("If the destination file exists, it will be
overwritten");
return 0;
}

if ((in = fopen(argv[1], "r")) == NULL)
{
puts("Unable to open the file to be copied");
return 0;
}

if ((out = fopen(argv[2], "w")) == NULL)
{
puts("Unable to open the output file");
return 0;
}
while (!feof(in))
{
key = fgetc(in);
if (!feof(in))

fputc(key, out);
}

fclose(in);
fclose(out);

return 0;
}

Previous page

page 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20

 
 

page 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37

 
 

page 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54

 
 

page 55 | 56 | 57 | 58 | 59 | 60

Next page
 
 
Data Recovery Book
 
Chapter 1 An Overview of Data Recovery
Chapter 2 Introduction of Hard Disks
Chapter 3 Logical Approach to Disks and OS
Chapter 4 Number Systems
Chapter 5 Introduction of C Programming
Chapter 6 Introduction to Computer Basics
Chapter 7 Necessary DOS Commands
Chapter 8 Disk-BIOS Functions and Interrupts Handling With C
Chapter 9 Handling Large Hard Disks
Chapter 10 Data Recovery From Corrupted Floppy
Chapter 11 Making Backups
Chapter 12 Reading and Modifying MBR with Programming
Chapter 13 Reading and Modifying DBR with Programming
Chapter 14 Programming for “Raw File” Recovery
Chapter 15 Programming for Data Wipers
Chapter 16 Developing more Utilities for Disks
Appendix Glossary of Data Recovery Terms
 
 

Pro Data Doctor

Home

Products

Contact Details

Customer Support

Download Demo

Terms and Conditions

 
Pro Data Doctor