Public feed
#723525
// redundancy checker.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
int main(int argc, char *argv[])
{
long int counter, long_initalizer, temp;
int initalizer;
char c, redundancy_array[256], whole_file[sizeof(long)];
FILE *ifp, *ofp;
if( argc != 4 || argc != 6 ) {
printf("\n%s%s%s\n%s\n",
"Usage: ", argv[0], " infile variable_redundancy METAMORPHOSIS_PARAMS (optional)SET_to (optional)outfile",
"METAMORPHOSIS_PARAMS can equal SET or DELETE");
exit(1);
}
ifp = fopen(argv[1], "r");
if( argv[6] != '\0' ) {
ofp = fopen(argv[1], "w");
} else {
ofp = fopen(argv[5], "w");
}
for( initalizer = 0; initalizer < 256; initalizer++ ) // always initalize array to 0 instead of null for integers, C++ doesn't handle accessing nulls well unlike UScript
redundancy_array[initalizer] = '\0';
for( long_initalizer = 0; long_initalizer < sizeof(long); long_initalizer++ ) // always initalize array to 0 instead of null for integers, C++ doesn't handle accessing nulls well unlike UScript
whole_file[long_initalizer] = '\0';
for( counter = 0; (c = getc(ifp)) != EOF; counter++ ) {
++initalizer;
whole_file[counter] = c;
redundancy_array[initalizer] = c;
if( c == '\n' ) {
for( temp = 0; redundancy_array[temp] != '=' || redundancy_array[temp] != ' '; temp++ ) { }
for( ; redundancy_array[temp] != '\n'; temp++ )
redundancy_array[temp] = '\0';
if( redundancy_array == argv[2] ) {
if( argv[3] == "DELETE" ) {
for( ; whole_file[counter - initalizer] != '\n'; initalizer-- )
whole_file[counter - initalizer] = '\0';
} else if( argv[3] == "SET" && argv[4] != '\0' ) {
for( ; whole_file[counter - initalizer] != '='; initalizer-- ) { }
for( temp = counter - initalizer + 1; whole_file[temp] != '\n'; temp++ )
whole_file[temp] = '\0';
whole_file[counter - initalizer + 1] = argv[4];
}
}
for( initalizer = 0; initalizer < 256; initalizer++ )
redundancy_array[initalizer] = 0;
initalizer = 0;
}
}
return 0;
}