Ejemplo n.º 1
0
int main (int argc,char *argv[]){
	
	char bookName[128]; /*Tamanho máximo para o título de um livro*/
	char opt[10];
	char word[256];/*Tamanho máximo permitido para uma palavra*/
	int ret = 0;
	ret = sscanf(argv[1],"-f%s",bookName);
	
	if (ret != 1){
		printf ("Entrada invalida, programa abortado!\n");
		exit(-1);
	}
	
	printf ("Bem vindo, livro inserido : %s\n",bookName);
	printf ("Inicilizando tabela hashing\n");
	STstart();
	printf ("Carregando Livro.....\n");
	STstartReadBook(bookName);

	printf ("Livro Carregado.....\n");
	printf ("Insira uma opcao e palavra : ");
	fscanf (stdin,"-%s %s",opt,word);
	clear_newlines();
	while (strcmp(opt,"F") != 0){
		if (strcmp(opt,"e") == 0)
			STseekWord(word,'e');
		if (strcmp(opt,"ev") == 0)
			STseekWord(word,'v');
		if (strcmp(opt,"eV") == 0)
			STseekWord(word,'V');
		if (strcmp(opt,"a") == 0)
			STseekLemma(word, 'a');
		if (strcmp(opt,"av") == 0)
			STseekLemma(word,'v');
		if (strcmp(opt,"aV") == 0)
			STseekLemma(word,'V');
		
		printf ("Insira uma opcao e palavra : ");
		fscanf (stdin,"-%s %s",opt,word);
		clear_newlines();
	}
	
	
	printf ("Fim de Programa!\n");
	
	return 0;

}
Ejemplo n.º 2
0
void select_menu(){
	// menu
	int menu;
	char command[1024];

	printf("- Select Menu -\n");
	printf("1. create note\n");
	printf("2. write note\n");
	printf("3. read note\n");
	printf("4. delete note\n");
	printf("5. exit\n");
	scanf("%d", &menu);
	clear_newlines();

	switch(menu){
		case 1:
			create_note();
			break;

		case 2:
			write_note();
			break;

		case 3:
			read_note();
			break;

		case 4:
			delete_note();
			break;6


		case 5:
			printf("bye\n");
			return;

		case 0x31337:
			printf("welcome to hacker's secret menu\n");
			printf("i'm sure 1byte overflow will be enough for you to pwn this\n");
			fgets(command, 1025, stdin);
			break;

		default:
			printf("invalid menu\n");
			break;
	}

	select_menu();
}
Ejemplo n.º 3
0
void read_note(){
	unsigned int no;
	printf("note no?\n");
	scanf("%d", &no);
	clear_newlines();
	if(no>256){
		printf("index out of range\n");
		return;
	}
	if(mem_arr[no]==NULL){
		printf("empty s**t!\n");
		return;
	}
	printf("%s\n", mem_arr[no]);
}
Ejemplo n.º 4
0
void delete_note(){
	unsigned int no;
	printf("note no?\n");
	scanf("%d", &no);
	clear_newlines();
	if(no>256){
		printf("index out of range\n");
		return;
	}
	if(mem_arr[no]==NULL){
		printf("already empty s**t!\n");
		return;
	}
	munmap(mem_arr[no], PAGE_SIZE);
	mem_arr[no] = NULL;
}
Ejemplo n.º 5
0
void write_note(){
	unsigned int no;
	printf("note no?\n");
	scanf("%d", &no);
	clear_newlines();
	if(no>256){
		printf("index out of range\n");
		return;
	}
	if(mem_arr[no]==NULL){
		printf("empty s**t!\n");
		return;
	}
	printf("paste your note (MAX : 4096 byte)\n");
	gets(mem_arr[no]);
}