Untitled
By: a guest | Mar 19th, 2010 | Syntax:
C | Size: 1.99 KB | Hits: 59 | Expires: Never
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define max 256
typedef struct list {
char name[max];
struct list *CONT;
}list;
void add(char *buffer, list *TMP, list *HEAD) {
if(HEAD == NULL) {
HEAD = (struct list*)malloc(sizeof(list));
if(sizeof(HEAD) == NULL) {
printf("Error while allocating space");
return;
}
else {
strcpy(HEAD->name, buffer);
HEAD->CONT = NULL;
//TMP = HEAD;
}
}
else {
struct list *NEXT = NULL;
TMP = HEAD;
while(TMP->CONT != NULL) TMP = TMP->CONT;
NEXT = (struct list*)malloc(sizeof(list));
if(sizeof(NEXT) == NULL) {
printf("Error while allocating space");
return;
}
else {
strcpy(NEXT->name, buffer);
TMP->CONT = NEXT;
NEXT->CONT = NULL;
TMP = TMP->CONT;
NEXT = NULL;
}
}
return;
}
void print(list *HEAD, list*TMP) {
TMP = HEAD;
while(TMP->CONT != NULL) {
printf("%s", TMP->name);
TMP = TMP->CONT;
}
printf("%s", HEAD->name);
}
/*int cmp(char *regex, char *nametocmp) {
int cmp = 0;
for(int i=0; i<strlen(nametocmp); i++) {
int tmp = 0;
for(int j=0; j<strlen(regex); j++) {
if(nametocmp[i] == regex[j]) {
tmp++;
}
}
if(tmp>=1) {
cmp++;
}
}
if(cmp != strlen(nametocmp)) {
return 0;
}
else return 1;
}
*/
/*int sortitup(list *HEAD) {
struct list *TMP = HEAD;
while(tmp->CONT != NULL) {
struct list *NEXT = TMP->CONT;
int cmp = strcmp(TMP->CONT,NEXT->CONT);
if(cmp>0) HEAD = BEGIN;
*/
int main(int argc, char *argv[]) {
FILE *input = NULL;
FILE *output = NULL;
char buffer[max] = "";
char regex[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
struct list *TMP = NULL;
struct list *HEAD = NULL;
input=fopen(argv[1], "r");
while(!(feof(input))) {
fgets(buffer, 256, input);
add(buffer, TMP, HEAD);
}
fclose(input);
print(HEAD, TMP);
printf("OK");
return 0;
}