www.pudn.com > 医学算法.rar > merge.c


#include	

/*
	merge - merge two 128 x 128 comtal images together

	Carl Crawford
	Purdue University
	W. Lafayette, IN. 47907

	Oct. 15, 1980
*/

main(argc,argv)
	int	argc;
	char	**argv;
{
	register	i,j;
	char	l1[128],l2[128];
	FILE	*ifd1,*ifd2,*ofd;

	if(argc != 3){
		fprintf(stderr,"syntax: merge pic1 pic2\n");
		exit(1);
	}
	if(( ifd1 = fopen(argv[1],"r")) == NULL){
		fprintf(stderr,"can't open: %s\n",argv[1]);
		exit(1);
	}
	if(( ifd2 = fopen(argv[2],"r")) == NULL){
		fprintf(stderr,"can't open: %s\n",argv[2]);
		exit(1);
	}
	if((ofd = fopen("pic","w")) == NULL){
		fprintf(stderr,"can't create: pic\n");
		exit(1);
	}

	for(i=0;i<128;i++){
		input(l1,ifd1);
		input(l2,ifd2);
		for(j=0;j<128;j++)l1[j] |= l2[j];
		fwrite(l1,1,128,ofd);
	}
}

input(l,ifd)
	char *l;
	FILE ifd;
{
	if(fread(l,1,128,ifd) != 128){
		fprintf(stderr,"unexpected EOF\n");
		exit(1);
	}
}