This C Program join lines of two given files and store them in a new file.
Here is source code of the C Program to join lines of two given files and store them in a new file. The C program is successfully compiled and run on a Linux system. The program output is also shown below.
/*
* C Program to Join Lines of Two given Files and
* Store them in a New file
*/
#include <stdio.h>
#include <stdlib.h>
/* Function Prototype */
int joinfiles(FILE *, FILE *, FILE *);
char ch;
int flag;
void main(int argc, char *argv[])
{
FILE *file1, *file2, *target;
file1 = fopen(argv[1], "r");
if (file1 == NULL)
{
perror("Error Occured!");
}
file2 = fopen(argv[2], "r");
if (file2 == NULL)
{
perror("Error Occured!");
}
target = fopen(argv[3], "a");
if (target == NULL)
{
perror("Error Occured!");
}
joinfiles(file1, file2, target); /* Calling Function */
if (flag == 1)
{
printf("The files have been successfully concatenated\n");
}
}
/* Code join the two given files line by line into a new file */
int joinfiles(FILE *file1, FILE *file2, FILE *target)
{
while ((fgetc(file1) != EOF) || (fgetc(file2) != EOF))
{
fseek(file1, -1, 1);
while ((ch = fgetc(file1)) != '\n')
{
if (ch == EOF)
{
break;
}
else
{
fputc(ch, target);
}
}
while ((ch = fgetc(file2)) != '\n')
{
if (ch == EOF)
{
break;
}
else
{
fputc(ch, target);
}
}
fputc('\n', target);
}
fclose(file1);
fclose(file2);
fclose(target);
return flag = 1;
}
$ cc file7.c $ ./a.out lines.c words.c final.c The files have been successfully concatenated /* FIRST FILE */ /* Hello!! This is a C Program File. Consider a code to Add two numbers */ #include <stdio.h> /* Function Prototype */ int sum(int, int); void main() { int num1, num2; printf("Enter Number1 and Number2:"); scanf("%d %d ", num1, num2); sum(num1, num2); } int sum(int a, int b) { return a + b; } /* SECOND FILE */ /* * this is temporary file for use in file handling */ #include <stdio.h> int sqrt(int); void main() { int num; printf("enter the number:"); scanf("%d", &num); sqrt(num); printf("The square of the given number is:", num); } int sqrt(int num) { return num*num; } /* CONCATENATED FILE */ /* Hello!! * this is temporary file for use in file handling This is a C Program File. * Consider a code to Add two numbers */ */ #include <stdio.h> #include <stdio.h> int sqrt(int); /* Function Prototype */void main() { int sum(int, int); int num; void main() printf("enter the number:"); { scanf("%d", &num); int num1, num2; sqrt(num); printf("Enter Number1 and Number2:"); printf("The square of the given number is:", num); scanf("%d %d ", num1, num2);} sum(num1, num2);int sqrt(int num) }{ return num*num; int sum(int a, int b)} { return a + b; }
Sanfoundry Global Education & Learning Series – 1000 C Programs.
advertisement
Here’s the list of Best Books in C Programming, Data-Structures and Algorithms
If you wish to look at programming examples on all topics, go to C Programming Examples.
Related Posts:
- Apply for C Internship
- Check Computer Science Books
- Watch Advanced C Programming Videos
- Apply for Computer Science Internship
- Check C Books