亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? page2.cpp

?? 一個內含進程管理、內存管理、文件管理的操作系統設計實現方案
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
	fat[j].item=0; /*-將該空閑塊設置為已分配-*/

	/*-------------填寫目錄項----------*/
	strcpy(cur_dir->directitem[i].name,name);
	cur_dir->directitem[i].firstdisk=j;   /*-指向子目錄(其實就是其本身)的起始盤塊號-*/
	cur_dir->directitem[i].size=ROOT_DISK_SIZE;
	cur_dir->directitem[i].property='1';
	  /*-extend_name是文件擴展名,目錄沒有,這里可以省略-*/
 
  
	  /*-所創目錄在虛擬磁盤上的地址(內存物理地址)-*/
	cur_mkdir=(struct direct *)malloc(sizeof(struct FCB));
  
	/*-初始化目錄-*/
	for( k=0;k<MSD;k++) /*-子目錄都初始化為空-*/
	{
		cur_mkdir->directitem[k].firstdisk ='F';
		strcpy( cur_mkdir->directitem[k].name,"");
		cur_mkdir->directitem[k].property = '0';
		cur_mkdir->directitem[k].size =0;
		cur_mkdir->directitem[k].extend_name=' ';  
	}
 
	/*-----------------更新磁盤中fat表---------------------*/
	if((fp=fopen("disk.dat","rb+"))==NULL)
	{
		printf("Error:\nCannot open file\n");
		return -11;                                
	} 
	fseek(fp,j,0);
    fwrite(&fat[j].item,1,1,fp);

	/*----------------更新當前目錄下的目錄項---------------*/
 
	fseek(fp,(curdir_block*64+8*i),0);
	fwrite(&cur_dir->directitem[i],sizeof(struct FCB),1,fp);
 
	/*-----------------把新建目錄的目錄項寫入磁盤-----------*/
	fseek(fp,(cur_dir->directitem[i].firstdisk*DISKSIZE),0);
	fwrite(cur_mkdir,sizeof(struct direct),1,fp);
  	fclose(fp);
	return 0;
}
/*----------------------------------------------------------------------------------------------*/
/*---------------------------------------復制文件-----------------------------------------------*/

int CPage2::mov(char *name1, char *name2)
{
	int flag1=0;
    char *temdirect=(char*)malloc(sizeof(DIR_LENGTH));
	char * tem_name1=(char*)malloc(sizeof(3+name1));
	char *t=(char*)malloc(5);
	int i,r=0;
	for(i=0;i<=int(strlen(name1));i++) *(tem_name1+i)=*(name1+i);
	i=strlen(name1)-1;
	while(i>=0&&name1[i]!='\\')
		i--;
	if(i!=-1)
	{ 
		for(int temp_i=0;temp_i<=5;temp_i++)
			if((name1+i)!=NULL)
			{
				i++;
				*(t+(temp_i))=*(name1+i);
			}
	}
	else 
	for(i=0;i<=int(strlen(name1));i++) *(t+i)=*(name1+i);
	if(name2[strlen(name2)-1]!='\\') strcat(name2,"\\");
	strcat(name2,t);
	for(i=0;i<=int(strlen(name2));i++) *(temdirect+i)=*(name2+i);
    create(name2);
	for(i=0;i<=int(strlen(name2));i++) *(name2+i)=*(temdirect+i);
	copy(tem_name1,name2);
	//////////////////////////////////////////////////////////////////////
////////////////////////////name1 的路徑與文件名///////////////////////////////////////
	struct direct * temp_dir;
	char *bufferdir_temp=(char*)malloc(sizeof(DIR_LENGTH));
	char curdir_block_temp;
	for(i=0;i<=int(strlen(bufferdir));i++)
		*(bufferdir_temp+i)=*(bufferdir+i);
	curdir_block_temp=curdir_block;
	temp_dir=(struct direct *)malloc(sizeof(struct direct));
	*temp_dir=*cur_dir;  /*-將當前目錄確定下來-*/
	
	i=strlen(name1)-1;
	while(i>=0&&name1[i]!='\\')
		i--;
	if(i!=-1)
	{ 
		for(int temp_i=0;temp_i<=5;temp_i++)
		{	if((name1+i)!=NULL)
			{
				i++;
				*(t+temp_i)=*(name1+i);
			}
		}
		name1[i-5]='\0';
		i=0;
		while(name1[i]!='\0') 
		{
			*(temdirect+i)=*(name1+i);
			i++;
		}
		*(temdirect+i)='\0';
		flag1=1;
		
	}
	else 
	{
		for(i=0;i<=int(strlen(name1));i++)
			*(t+i)=*(name1+i);
	}
	if(flag1==1)
    r=chdir(temdirect);
	if((r==-1)||(r==-2)) return -7;
	del(t);
	if(flag1==1)
	{
		
		bufferdir=bufferdir_temp;
		curdir_block=curdir_block_temp;
		*cur_dir=*temp_dir;  /*-將當前目錄確定下來-*/
	}
	
	return 0;

}
/*----------------------------------------------------------------------------------------------*/
/*----------------------------------------打開文件----------------------------------------------*/

int CPage2::open(char *name)
{
	 int i, j;
    char extend=' ';
    char name_temp[3]={0};
	
    for(i=0;i<5;)
    if(name[i]!='.')
	{

		name_temp[i]=name[i];
		i++;
	}
	else 
	{      
		i++;
		extend=name[i];
		break;
	}   
   
    for(j=0;j<MSD;j++) /*檢查創建文件是否與已存在的文件重名*/
    {
		int k=0;
		while((cur_dir->directitem[j].name[k]!=NULL)&&k<3)
			k++;
		if(k!=int(strlen(name)-2)) continue;
		k=0;
		while(k<int(strlen(name)-2))
		{
			if(cur_dir->directitem[j].name[k]==name_temp[k]) k++;
			else break;
		}          
		if(k>=int(strlen(name)-2)) k=-1;
		if((k==-1)&&(cur_dir->directitem[j].extend_name==extend))
		break;   
    }
    
    if(j>=MSD) /*文件不存在*/
            return(-1);
 /*--------是文件還是目錄-----------------------*/  
	if(cur_dir->directitem[j].property=='1')/*是目錄,不可打開讀寫*/
    return(-4);
    i=j;
    /*--------文件是否打開-----------------------*/        
    for(j=0;j<MOFN;j++)
    {
        if(!strcmp(u_opentable.openitem[j].name,name))
		break;
    } 
    if(j<MOFN)  /*文件已經打開*/
        return(-2);
                       
    if(u_opentable.cur_size>=MOFN) /*文件打開太多*/
        return(-3); 

    /*--------查找一個空閑用戶打開表項-----------------------*/    
    for(j=0;j<MOFN;j++)
    {
        if(u_opentable.openitem[j].firstdisk=='F')
        break;    
    }
    /*--------------填寫表項的相關信息------------------------*/
	
    u_opentable.openitem[j].firstdisk=cur_dir->directitem[i].firstdisk;
    strcpy(u_opentable.openitem[j].name,name);
    u_opentable.openitem[j].size=cur_dir->directitem[i].size;
    u_opentable.cur_size++;
	
    /*----------返回用戶打開表表項的序號--------------------------*/
    return(j);
}

void CPage2::print()
{
	m_display+="****************************************************************************  \r\n \t\t Welcome to DOS File system! \r\n ---------------------------------------------------------------------------- \r\n \t\t 創建文件  create 文件名\r\n\t\t 刪除文件  delete 文件名\r\n\t\t 顯示文件  type 文件名\r\n\t\t 復制文件  copy (路徑)文件名   (路徑)文件名\r\n\t\t 編輯文件  edit\r\n\t\t 創建子目錄  mkdir 目錄名\r\n\t\t 刪除子目錄  deldir 目錄名\r\n\t\t 顯示當前目錄的子目錄 dir\r\n\t\t 移動文件    move  (路徑)文件名   路徑\r\n\t\t 磁盤格式化   format\r\n\t\t 退出系統      halt\r\n\t\t 顯示幫助信息   help\r\n\n\n\tNotice:在輸入文本時,用 $ 字符作為空格, # 字符作為換行符\r\n---------------------------------------------------------------------------\r\n";

}
/*----------------------------------------------------------------------------------------------*/
/*----------------------------------------讀文件------------------------------------------------*/

int CPage2::read(int fd, char *buf)
{
		
		int len=u_opentable.openitem[fd].size;
	int i,item,temp;
	int ilen1, modlen;

	item =u_opentable.openitem[fd].firstdisk;
	if(len>u_opentable.openitem[fd].size) /*--欲讀出的文件長度比實際文件長度長-*/
	return(-1);

	ilen1 = len/DISKSIZE;
	modlen = len%DISKSIZE;
	if(modlen!=0)
	ilen1 = ilen1+1; /*--計算文件所占磁盤的塊數-*/

	for(i=0;i<ilen1;i++)
	{
		if(i==ilen1-1) /*--如果在最后一個磁盤塊-*/
		{
			if((fp=fopen("disk.dat","rb"))==NULL)
			{
				printf("Error:\nCannot open file\n");
				return -2;                                
			} 
			fseek(fp,item*64,0);
			temp=len-i*DISKSIZE;
			fread(&buf[i*DISKSIZE],temp,1,fp);
			fclose(fp);
		}
		else /*--不在最后一塊磁盤塊-*/
		{
			if((fp=fopen("disk.dat","rb"))==NULL)
			{	
				printf("Error:\nCannot open file\n");
				return -2;                                
			} 
			fseek(fp,item*64,0);
			fread(&buf[i*DISKSIZE],DISKSIZE,1,fp);
		    fclose(fp);
			item = fat[item].item; /*-查找下一盤塊-*/
		//	first =fdisk+item*DISKSIZE;
			/*CString strLine;
			 m_display+=buf;
			 m_display+="\r\n";
			strLine.Format("%s",m_display);
			GetDlgItem(IDC_EDIT1)->SetWindowText(strLine);*/
		}
	}
	return len;
}
/*----------------------------------------------------------------------------------------------*/
/*---------------------------------------刪除子目錄---------------------------------------------*/

int CPage2::rmdir(char *name)
{
	
	struct direct *temp_curdir;
    int i,j;
	int k,q,l;
  
	for(j=0;j<MSD;j++) /*-判斷是否有重名-*/
	{
		for(k=0;k<(int)strlen(name);)
		{
			 if(cur_dir->directitem[j].name[k]==name[k])  k++;
			 else break;
			 if(k==(int)strlen(name)) {k=-1; break;}
		}
		if((cur_dir->directitem[j].property=='1')&&(k==-1))
		break;
	}
	if(j<MSD)  /*-如果有重名-*/
	{
		i=j;
	    temp_curdir=(struct direct *)malloc(sizeof(struct direct));
		q=cur_dir->directitem[i].firstdisk;
		if((fp=fopen("disk.dat","rb"))==NULL)
		{
			printf("Error:\nCannot open file\n");
			return -11;                                
		} 
		fseek(fp,q*64,0);
		fread(temp_curdir,sizeof(struct direct),1,fp);
		fclose(fp);
		for(l=0;l<MSD;l++) if(temp_curdir->directitem[l].firstdisk!='F') break;
		if(l<MSD)  
		{
			printf("Error:the directory is not empty!\n"); 
			return 0;
		}
		fat[q].item='F'; /*-將該空閑塊設置為已分配-*/
		/*-------------填寫目錄項----------*/
		for(k=0;k<3;k++) cur_dir->directitem[i].name[k]=' ';
		cur_dir->directitem[i].firstdisk='F';   /*-指向子目錄(其實就是其本身)的起始盤塊號-*/
		cur_dir->directitem[i].size=0;
		cur_dir->directitem[i].property='0';
		  /*-extend_name是文件擴展名,目錄沒有,這里可以省略-*/
  
		/*-----------------更新磁盤中fat表---------------------*/
		if((fp=fopen("disk.dat","rb+"))==NULL)
		{
			printf("Error:\nCannot open file\n");
			return -11;                                
		} 
		fseek(fp,q,0);
		fwrite(&fat[j].item,1,1,fp);

		/*----------------更新當前目錄下的目錄項---------------*/
 
		fseek(fp,(curdir_block*64+8*i),0);
		fwrite(&cur_dir->directitem[i],sizeof(struct FCB),1,fp);
   		fclose(fp);
	}
	return 0;

}
/*----------------------------------------------------------------------------------------------*/
/*----------------------------------------寫文件------------------------------------------------*/

int CPage2::write(int fd, char *buf, int len)
{
	char item1;
	int i, j;
	short ilen1, ilen2, modlen, temp;
	/*----------用 $ 字符作為空格 # 字符作為換行符-----------------------*/
	char Space = 32; /*SPACE的ASCII碼值*/
	char Endter= '\n';
 
	for(i=0;i<len;i++)
	{
		if(buf[i] == '$') /*用 $ 字符作為空格*/
		buf[i] = Space;
		else if(buf[i] == '#')
		buf[i] = Endter;
	}

	 /*----------讀取用戶打開表對應表項第一個盤塊號-----------------------*/

	item1 = u_opentable.openitem[fd].firstdisk;

	/*-------------找到當前目錄所對應表項的序號-------------------------*/
	for(i=0;i<MSD;i++)
	{
		if(cur_dir->directitem[i].firstdisk==item1)
		break;
	}
	temp = i; /*-存放當前目錄項的下標-*/

	 /*------找到的item 是該文件的最后一塊磁盤塊-------------------*/
	//printf("%d\n",fat[item1].item);
	while((fat[item1].item!='F') &&fat[item1].item>2)                //fat[item1].item>2這個很重要
	{
	   item1=fat[item1].item; /*-查找該文件的下一盤塊--*/
	}

	 /*-----計算除該文件的最末地址-------*/
	// first = fdisk+item*DISKSIZE+u_opentable.openitem[fd].size%DISKSIZE;
	 if((fp=fopen("disk.dat","rb+"))==NULL)
	 {
		 printf("Error:\nCannot open file\n");
		 return -11;                                
	 }	  
      
		 /*-----如果最后磁盤塊剩余的大小大于要寫入的文件的大小,把內容寫回磁盤-------*/
	 if(DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE>len)
	 {
		 fseek(fp,item1*DISKSIZE+u_opentable.openitem[fd].size%DISKSIZE,0); //計算除該文件的最末地址:item*DISKSIZE+u_opentable.openitem[fd].size%DISKSIZE
		 fwrite(buf,len,1,fp);
		 u_opentable.openitem[fd].size = u_opentable.openitem[fd].size+len; //修改文件打開表
		/*----------修改目錄項,并寫入磁盤------------------*/
		 cur_dir->directitem[temp].size = cur_dir->directitem[temp].size+len;
		 fseek(fp,curdir_block*64+temp*8+6,0);
		 fwrite(&cur_dir->directitem[temp].size,2,1,fp);
		
	 }
	 else
	 {
	     for(i=0;i<(DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE);i++)
		 {/*寫一部分內容到最后一塊磁盤塊的剩余空間(字節)*/ 
			 fseek(fp,item1*DISKSIZE+u_opentable.openitem[fd].size%DISKSIZE,0);
			 fwrite(buf,(DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE),1,fp);
		 }
	   /*-----計算分配完最后一塊磁盤的剩余空間(字節) 還剩下多少字節未存儲-------*/
	     ilen1 = len-(DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE);
	     ilen2 = ilen1/DISKSIZE;  
	     modlen = ilen1%DISKSIZE;
	     if(modlen>0)
		 ilen2 = ilen2+1; /*--還需要多少塊磁盤塊-*/
		  /*調試時特別注意*/
	     for(j=0;j<ilen2;j++)
		 {
			for(i=ROOT_DISK_NO+1;i<DISK_NUM;i++)/*尋找空閑磁盤塊*/
			{
				if(fat[i].item=='F')
				break;
			}
		    if(i>=DISK_NUM) /*--如果磁盤塊已經分配完了-*/
		    return(-1);
    
		   if(j==ilen2-1) /*--如果是最后要分配的一塊-*/
		   {
			   fseek(fp,i*DISKSIZE,0);
			   fwrite(&buf[DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE+j*DISKSIZE],modlen,1,fp);
		   }
		   else/*-如果不是要最后分配的一塊--*/
		   {
			  fseek(fp,i*DISKSIZE,0);
			  fwrite(&buf[DISKSIZE-u_opentable.openitem[fd].size%DISKSIZE+j*DISKSIZE],DISKSIZE,1,fp);
		   }
	/*-------------更新FAT表-----------------------------*/
		  fat[item1].item = i;  /*--找到一塊后將它的序號存放在上一塊的指針中-*/
		  fat[i].item = 0;  /*--它的指針為 0 (即沒有下一塊)-*/
		  fseek(fp,item1,0);
		  fwrite(&fat[item1].item ,1,1,fp);
		  fseek(fp,i,0);
		  fwrite(&fat[i].item,1,1,fp);
		  item1=i;
	   }
		 /*--修改文件打開表用戶的長度-*/
	   u_opentable.openitem[fd].size = u_opentable.openitem[fd].size+len;
	   /*--修改目錄項的文件長度,并寫回磁盤-*/
	   cur_dir->directitem[temp].size = cur_dir->directitem[temp].size+len;
	   fseek(fp,curdir_block*64+temp*8+6,0);
	   fwrite(&cur_dir->directitem[temp].size,2,1,fp);
	}
	   

	fclose(fp);
	return 0;
}

void CPage2::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	
	// TODO: Add your message handler code here
		CWnd   *pWnd=GetDlgItem(IDC_STATE);   
          CDC   *pControlDC=pWnd->GetDC();   
          pWnd->Invalidate();   
          pWnd->UpdateWindow();   
          
		 if(color==-1) 
		 {
			  pControlDC->SelectStockObject(R2_BLACK);  
			 for(int i=0;i<128;i++)
			 pControlDC->Rectangle(hardisk_state[i].x1,hardisk_state[i].y1,hardisk_state[i].x2,hardisk_state[i].y2);   //畫矩形
			
		 }
		
		 else
		 {
			 pControlDC->SelectStockObject(BLACK_BRUSH); 
			 pControlDC->Rectangle(hardisk_state[disk_num1].x1,hardisk_state[disk_num1].y1,hardisk_state[disk_num1].x2,hardisk_state[disk_num1].y2);   //畫矩形

		 }

			 pWnd->ReleaseDC(pControlDC);   


	// Do not call CDialog::OnPaint() for painting messages
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美揉bbbbb揉bbbbb| 久久综合综合久久综合| 精品1区2区在线观看| 欧美精品久久久久久久久老牛影院| 91丨九色丨蝌蚪富婆spa| 99精品欧美一区二区三区小说| 岛国一区二区三区| 91精品国产色综合久久不卡蜜臀| 91丨porny丨在线| 99在线精品一区二区三区| 高清久久久久久| 成人av中文字幕| 91麻豆国产福利在线观看| av午夜精品一区二区三区| 成人午夜精品在线| 色综合天天综合网天天狠天天| 91小视频在线| 欧美另类z0zxhd电影| 欧美成人a∨高清免费观看| 国产午夜亚洲精品午夜鲁丝片| 国产午夜精品一区二区三区嫩草 | 久久久久国产精品人| 精品视频999| 91黄色免费观看| 欧美三级电影网| 精品嫩草影院久久| 中文字幕高清不卡| 夜色激情一区二区| 青青草国产成人99久久| 东方aⅴ免费观看久久av| aaa欧美色吧激情视频| 99riav久久精品riav| caoporn国产精品| hitomi一区二区三区精品| 91搞黄在线观看| 欧美电影免费观看高清完整版在线观看| 日韩免费观看2025年上映的电影| 国产午夜精品福利| 亚洲国产视频一区| 成人一区二区在线观看| 在线观看精品一区| 久久午夜老司机| 亚洲一区二区在线播放相泽| 寂寞少妇一区二区三区| 欧美唯美清纯偷拍| 国产精品久久精品日日| 久久精品国产亚洲高清剧情介绍| a美女胸又www黄视频久久| 5月丁香婷婷综合| 国产精品另类一区| 久久丁香综合五月国产三级网站| 一本大道久久a久久综合婷婷| 精品国产乱码久久久久久图片 | 91一区二区在线| 日韩一区二区在线观看视频播放| 亚洲欧洲成人精品av97| 久久91精品久久久久久秒播| 色婷婷av一区二区三区之一色屋| 久久亚洲一区二区三区四区| 五月天中文字幕一区二区| 99re热这里只有精品视频| 日韩精品中午字幕| 丝袜美腿亚洲色图| 欧美在线|欧美| 成人欧美一区二区三区1314| 国产精品原创巨作av| 欧美成人精品二区三区99精品| 亚洲丶国产丶欧美一区二区三区| 99久久国产综合精品色伊| 国产日本亚洲高清| 麻豆精品久久精品色综合| 欧美精品久久一区| 日本麻豆一区二区三区视频| 欧美日韩一级片网站| 亚洲综合久久av| 欧洲av一区二区嗯嗯嗯啊| 亚洲欧美激情在线| 91色视频在线| 亚洲福中文字幕伊人影院| 欧美亚洲自拍偷拍| 午夜亚洲国产au精品一区二区 | 亚洲超丰满肉感bbw| 欧美日韩在线一区二区| 亚洲不卡在线观看| 日韩欧美久久久| 韩国v欧美v日本v亚洲v| 亚洲精品国产无天堂网2021 | 亚洲人成在线播放网站岛国| 成人综合婷婷国产精品久久蜜臀 | 国产999精品久久久久久绿帽| 久久精品一区蜜桃臀影院| 国产精品乡下勾搭老头1| 337p日本欧洲亚洲大胆色噜噜| 国产乱一区二区| 国产精品国产三级国产aⅴ中文 | 欧美少妇一区二区| 婷婷久久综合九色国产成人| 欧美一区二区三区视频免费播放| 精品成人一区二区| 日本成人在线网站| 久久亚洲欧美国产精品乐播| 懂色av一区二区三区免费看| 亚洲色图在线视频| 欧美日韩激情在线| 国产一区二区三区| 亚洲精品网站在线观看| 在线不卡a资源高清| 国产精品一区二区无线| 亚洲精选视频免费看| 欧美一区二区三区免费| 成人福利视频网站| 亚洲成人资源在线| 国产精品久久影院| 欧美一区二区日韩一区二区| 国产91精品在线观看| 丝袜亚洲另类欧美综合| 国产精品麻豆网站| 精品美女一区二区| 在线观看中文字幕不卡| 精品一区免费av| 一区二区三区.www| 日本一区二区三级电影在线观看| 成人午夜短视频| 国产精品大尺度| 亚洲摸摸操操av| 欧美日韩国产一级片| 久久综合色之久久综合| 日韩精品视频网| 欧美三级电影在线观看| 国产剧情av麻豆香蕉精品| 精品国产一区二区亚洲人成毛片| 精品久久久久久无| 色悠久久久久综合欧美99| 欧美性xxxxxxxx| 香蕉久久一区二区不卡无毒影院 | 樱花草国产18久久久久| 亚洲国产精品精华液网站| 中文欧美字幕免费| 欧美视频在线一区二区三区 | 欧美国产97人人爽人人喊| 欧美日韩在线三区| 一本大道久久a久久综合| 成人免费av网站| 国模娜娜一区二区三区| 日本va欧美va欧美va精品| 亚洲成a人片在线观看中文| 综合分类小说区另类春色亚洲小说欧美 | 成人丝袜18视频在线观看| 日韩高清一区在线| 国产精品一区二区无线| 久久午夜国产精品| 欧美日韩精品一区二区在线播放| 精品国产乱码久久久久久牛牛| 国产美女精品在线| 国产精品久久久久影视| 成人av免费网站| 91视频观看视频| 在线欧美日韩精品| 成人avav影音| 成a人片国产精品| 91小视频免费看| 亚洲不卡一区二区三区| 色88888久久久久久影院野外| 欧美大片在线观看| 欧美日韩视频在线观看一区二区三区 | 麻豆精品一区二区综合av| 欧美二区乱c少妇| 欧美色男人天堂| 欧美一卡二卡三卡四卡| 夜夜亚洲天天久久| 一区二区三区在线视频免费| 亚洲欧美另类在线| 亚洲蜜臀av乱码久久精品蜜桃| 夜夜精品浪潮av一区二区三区| 美日韩黄色大片| 成人免费高清在线| 成人毛片在线观看| 欧美专区日韩专区| 91啪亚洲精品| 成+人+亚洲+综合天堂| 国产伦精品一区二区三区免费迷| 成人美女视频在线观看| 国产午夜一区二区三区| 久久亚区不卡日本| 国产精品乱人伦中文| 亚洲色图一区二区| 日韩美女视频在线| 97精品国产露脸对白| 日韩黄色在线观看| 欧美精品丝袜久久久中文字幕| 亚洲第一福利一区| 中文字幕制服丝袜成人av| 91精品国产综合久久精品app | 国产精品不卡一区| 91精品国产一区二区三区香蕉 | 一区二区三区精品视频| 久久久久久日产精品| 日韩精品一区二区三区swag| 在线亚洲一区观看| 久久成人久久爱|