编辑代码

#include<stdio.h>
#include<string.h>
#include<stdbool.h>
#include<stdlib.h>
typedef struct{
	char* buffer;
	size_t buffer_length;
	ssize_t input_length;
} inputBuffer;


inputBuffer * new_input_buffer(){
	inputBuffer* input_buffer=(inputBuffer *)malloc(sizeof(inputBuffer));
	input_buffer->buffer=NULL;
	return input_buffer;
}

void print_prompt(){printf("db>");}



void read_input(inputBuffer *input_buffer){
	ssize_t read_bytes=getline(&(input_buffer->buffer),&(input_buffer->buffer_length),stdin);
	if(read_bytes==-1){
		printf("Error coding motherfucker");
		exit(0);
	}
	
	input_buffer->buffer[read_bytes-1]=0;




}




void close_input_buffer(inputBuffer* input_buffer){

	free(input_buffer->buffer);
	free(input_buffer);
}




int main(int argc,char *argv[]){
	inputBuffer *input_buffer=new_input_buffer();
	while(1){
		print_prompt();
		read_input(input_buffer);
		if(strcmp(input_buffer->buffer,"exit")==0){
			close_input_buffer(input_buffer);
			exit(0);
		}
		else
		{
			printf("Unrecognized command %s\n",input_buffer->buffer);
		}
	}
	
	return 0;

}