• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    準(zhǔn)確使用C/C++中等于運(yùn)算符的研究

    2016-11-28 03:10:55張合花張全法齊永奇
    中州大學(xué)學(xué)報(bào) 2016年2期
    關(guān)鍵詞:浮點(diǎn)數(shù)運(yùn)算符程序員

    張合花,張全法,齊永奇

    (1.鄭州大學(xué) 物理工程學(xué)院,鄭州 450001;2.華北水利水電大學(xué) 機(jī)械學(xué)院,鄭州 450045)

    ?

    準(zhǔn)確使用C/C++中等于運(yùn)算符的研究

    張合花1,張全法1,齊永奇2

    (1.鄭州大學(xué) 物理工程學(xué)院,鄭州 450001;2.華北水利水電大學(xué) 機(jī)械學(xué)院,鄭州 450045)

    本文討論C/C++程序設(shè)計(jì)中等于運(yùn)算符的兩種常見使用錯(cuò)誤,即與賦值運(yùn)算符混淆和用來判別兩個(gè)浮點(diǎn)數(shù)是否相等。從程序員的角度給出了減少與賦值運(yùn)算符混淆,以及不同情況下正確判別兩個(gè)浮點(diǎn)數(shù)是否相等的方法。并利用VC 6.0設(shè)計(jì)了一個(gè)Add-in程序,能夠自動發(fā)現(xiàn)有可能出現(xiàn)這兩種錯(cuò)誤的語句,提醒程序員注意,以便從集成開發(fā)環(huán)境的角度減少錯(cuò)誤。

    C/C++程序設(shè)計(jì);等于運(yùn)算符;Add-in

    《C語言程序設(shè)計(jì)》是大多數(shù)高校開設(shè)的第一門計(jì)算機(jī)語言課程,《C++語言程序設(shè)計(jì)》則是許多高校開設(shè)的計(jì)算機(jī)語言進(jìn)階課程,同時(shí)C/C++也是廣大工程技術(shù)人員最常用的程序設(shè)計(jì)語言之一。然而C/C++程序設(shè)計(jì)的靈活性也帶來了一些負(fù)面影響,即容易出現(xiàn)各種各樣的錯(cuò)誤,其中就有等于運(yùn)算符使用不慎造成的。

    等于運(yùn)算符也稱為相等運(yùn)算符,用來判別兩個(gè)操作數(shù)是否相等。它由“==”構(gòu)成,很容易與由“=”構(gòu)成的賦值運(yùn)算符混淆(以下簡稱為混淆錯(cuò)誤),這在很多文獻(xiàn)中有論述[1-4]。另外它還常被用來判別兩個(gè)浮點(diǎn)數(shù)是否相等(以下簡稱為浮點(diǎn)數(shù)錯(cuò)誤),導(dǎo)致運(yùn)行結(jié)果不一定正確,例如文獻(xiàn)[5]和文獻(xiàn)[6]中的例程就出現(xiàn)了這種錯(cuò)誤。本文主要研究在編程中如何盡量避免出現(xiàn)這兩種錯(cuò)誤。

    1 問題的引入

    假設(shè)有這樣一個(gè)數(shù)學(xué)問題:在平面直角坐標(biāo)系Oxy中有4個(gè)點(diǎn)A、B、C、D,各點(diǎn)的坐標(biāo)值如圖1所示,問C、D兩點(diǎn)是否位于A、B兩點(diǎn)所決定的直線上?在數(shù)學(xué)上很容易求得通過A、B兩點(diǎn)的直線方程,進(jìn)而知道C點(diǎn)在直線上而D點(diǎn)不在直線上。

    為了利用計(jì)算機(jī)求解,用VC 6.0新建控制臺類型的空白項(xiàng)目,項(xiàng)目名為Test。向其中添加名字為Test.cpp的源文件,文件內(nèi)容如下:

    圖1 平面直角坐標(biāo)系中的點(diǎn)

    #include

    void main(){

    float xA=0.0f,yA=0.04f;

    float xB=0.01f,yB=0.03f;

    float xC=0.005f,yC=0.035f;

    float xD=0.02f,yD=0.04f;

    float y=(xC-xB)*(yA-yB)/(xA-xB)+yB;

    if(y==yC)

    cout<<"C is on line."<

    else

    cout<<"C is not on line."<

    y=(xD-xB)*(yA-yB)/(xA-xB)+yB;

    if(y=yD)

    cout<<"D is on line."<

    else

    cout<<"D is not on line."<

    以上程序在編譯、鏈接時(shí)均沒有任何錯(cuò)誤或警告。運(yùn)行程序,輸出為:

    C is on line.

    D is on line.

    從運(yùn)行結(jié)果看,對C點(diǎn)的判別是正確的,對D點(diǎn)的判別是錯(cuò)誤的。針對錯(cuò)誤的運(yùn)行結(jié)果對程序進(jìn)行分析可以發(fā)現(xiàn),在第2個(gè)if語句的判斷表達(dá)式中誤將等于運(yùn)算符寫成了賦值運(yùn)算符。這使得只要其右操作數(shù)不為0,均執(zhí)行if子句而不執(zhí)行else子句。

    改正之后再運(yùn)行程序,輸出為:

    C is on line.

    D is not on line.

    此時(shí)對C、D兩點(diǎn)的判別均是正確的,好像程序沒有問題了。其實(shí)不然,只要將程序中各數(shù)據(jù)的小數(shù)點(diǎn)向后移一位,輸出將變?yōu)椋?/p>

    C is not on line.

    D is not on line.

    對C點(diǎn)的判別不再正確。

    為什么運(yùn)行結(jié)果會變得不再正確呢?原因在于浮點(diǎn)數(shù)在計(jì)算機(jī)中通常只能近似表示,即使兩個(gè)在數(shù)學(xué)上應(yīng)該相等的浮點(diǎn)數(shù),在計(jì)算機(jī)中經(jīng)過計(jì)算也很可能不相等。因此,用等于運(yùn)算符判別兩個(gè)浮點(diǎn)數(shù)是否相等很可能得不到正確結(jié)果。這種錯(cuò)誤比混淆錯(cuò)誤更加隱晦,很難在調(diào)試過程中被發(fā)現(xiàn),所以減少這種錯(cuò)誤的迫切性更強(qiáng)烈。

    2 主動減少錯(cuò)誤的方法

    2.1 減少混淆錯(cuò)誤的方法

    作為程序員,首先要認(rèn)識到判別兩個(gè)操作數(shù)是否相等應(yīng)該用兩個(gè)等號而不是一個(gè)等號。其次,在編輯程序時(shí)應(yīng)該時(shí)刻保持警惕,不要因?yàn)檫B續(xù)擊鍵不到位等原因而漏掉兩個(gè)等號中的一個(gè)。為了進(jìn)一步減少這種錯(cuò)誤,在條件允許的情況下應(yīng)該盡量將非左值表達(dá)式(例如常量)放到等于運(yùn)算符的左側(cè)。因?yàn)榇藭r(shí)一旦誤用了賦值運(yùn)算符,編譯器會報(bào)告錯(cuò)誤。

    2.2 減少浮點(diǎn)數(shù)錯(cuò)誤的方法

    作為程序員,首先要認(rèn)識到用等于運(yùn)算符判別兩個(gè)浮點(diǎn)數(shù)是否相等可能得到錯(cuò)誤的結(jié)果。其次還要知道遇到此類問題該如何處理。由于浮點(diǎn)數(shù)在計(jì)算機(jī)中只能近似表示,無法判別兩個(gè)浮點(diǎn)數(shù)是否嚴(yán)格相等,凡是判別兩個(gè)浮點(diǎn)數(shù)是否相等的問題通常只能轉(zhuǎn)化為判別它們是否近似相等。但是C/C++中沒有近似相等運(yùn)算符。為此,可以根據(jù)具體問題設(shè)置一個(gè)小量,當(dāng)兩個(gè)浮點(diǎn)數(shù)之差的絕對值小于該小量時(shí)認(rèn)為二者近似相等[7]。如果需要對浮點(diǎn)數(shù)進(jìn)行其他關(guān)系運(yùn)算,也需要進(jìn)行類似的處理,否則可能得不到正確結(jié)果。

    對于以上經(jīng)過修改的程序,再把“if(y==yC)”和 “if(y==yD)”分別修改為“if(fabs(y-yC)<1.0e-6)”和“if(fabs(y-yD)<1.0e-6)”。由于此時(shí)需要調(diào)用庫函數(shù)fabs(),還應(yīng)該在程序前面包含頭文件math.h。再運(yùn)行程序,輸出為:

    C is on line.

    D is not on line.

    結(jié)果正確。即使將數(shù)據(jù)恢復(fù)到移動小數(shù)點(diǎn)之前,結(jié)果依然正確。

    對于某些問題,如果能夠轉(zhuǎn)化為整數(shù)運(yùn)算,則仍然可以使用等于運(yùn)算符。例如文獻(xiàn)[5]和文獻(xiàn)[6]的例程中,如果將對灰度值出現(xiàn)概率的求和修改為對灰度值出現(xiàn)次數(shù)的求和,再利用等于運(yùn)算符判別求和結(jié)果是否等于灰度值出現(xiàn)的總次數(shù),將可以避免處理某些圖像時(shí)陷入死循環(huán)。

    3 利用Add-in減少錯(cuò)誤

    3.1 必要性和可行性

    編程知識和經(jīng)驗(yàn)不夠豐富的程序員不具備主動防范上述錯(cuò)誤的能力。即使編程知識和經(jīng)驗(yàn)很豐富的程序員也難以通過主動防范杜絕上述錯(cuò)誤。而僅根據(jù)調(diào)試結(jié)果又不太容易發(fā)現(xiàn)上述錯(cuò)誤,因?yàn)橛袝r(shí)候運(yùn)行結(jié)果沒有錯(cuò)誤,或者因調(diào)試不完備導(dǎo)致存在錯(cuò)誤的語句沒有被執(zhí)行。顯然,如果能夠設(shè)法讓集成開發(fā)環(huán)境自動發(fā)現(xiàn)上述錯(cuò)誤并發(fā)出警告,將非常有利于避免上述錯(cuò)誤的發(fā)生。

    目前,在高校和企業(yè)中廣泛使用VC 6.0集成開發(fā)環(huán)境作為C/C++的教學(xué)和研發(fā)平臺。它可以外掛Add-in對正在開發(fā)的程序進(jìn)行分析,查找可能出現(xiàn)的問題。Add-in已經(jīng)被成功地用來減少重復(fù)聲明復(fù)合類型的風(fēng)險(xiǎn)[8]、使用goto語句的錯(cuò)誤[9]以及使用后置自增自減運(yùn)算符的非預(yù)期結(jié)果[10]。因此,設(shè)計(jì)一個(gè)能夠自動查找等于運(yùn)算符使用錯(cuò)誤的Add-in是可行的。

    3.2 查找錯(cuò)誤的原理和困難

    查找錯(cuò)誤的原理很簡單。對于在程序中查找到的每一個(gè)賦值運(yùn)算符,如果能夠推斷該處應(yīng)該使用等于運(yùn)算符則說明該處出現(xiàn)了混淆錯(cuò)誤,否則該處沒有錯(cuò)誤。對于在程序中查找到的每一個(gè)等于運(yùn)算符,如果能夠推斷它作用在浮點(diǎn)數(shù)上,則說明該處出現(xiàn)了浮點(diǎn)數(shù)錯(cuò)誤,否則該處沒有錯(cuò)誤。按照此原理可以避免對于上述兩種錯(cuò)誤的漏報(bào)。

    困難在于如何準(zhǔn)確地進(jìn)行推斷。由于在Add-in中無法知道程序所描述的實(shí)際問題,很難推斷賦值運(yùn)算符是否應(yīng)該為等于運(yùn)算符。推斷等于運(yùn)算符操作數(shù)的類型也很不容易,因?yàn)槠洳僮鲾?shù)可以是各種各樣的表達(dá)式,甚至可以沒有類型,例如宏形參。即使其操作數(shù)為變量也不容易推斷其類型,因?yàn)樽兞款愋偷穆暶骺赡懿辉诒疚募?,例如在包含文件中,包含文件還可以嵌套;內(nèi)層變量的類型可以與外層同名變量的類型不同等等。

    3.3 解決問題的辦法

    如上所述,在Add-in中很難推斷是否一定產(chǎn)生了錯(cuò)誤,然而程序員對程序所描述的問題是清楚的。因此,將可能出現(xiàn)錯(cuò)誤的位置及可能的錯(cuò)誤類型報(bào)告給程序員去判斷,可以得到準(zhǔn)確的結(jié)果并由其采取正確的措施。但是這又會帶來新的問題。等于運(yùn)算符使用得比較少,即使將所有使用它的地方報(bào)告給程序員,誤報(bào)量也不大。但是如果將所有使用賦值運(yùn)算符的地方報(bào)告給程序員,必將產(chǎn)生大量誤報(bào),因?yàn)橘x值運(yùn)算是一種很常見的運(yùn)算。

    可以根據(jù)等于運(yùn)算符的屬性減少誤報(bào)。等于運(yùn)算符屬于關(guān)系運(yùn)算符,最有可能出現(xiàn)的地方首先是if語句的判斷條件表達(dá)式,其次是條件運(yùn)算符的判斷條件表達(dá)式,然后是for、while和do…while語句的循環(huán)條件表達(dá)式。而這些地方使用賦值運(yùn)算符的可能性是比較低的。僅在這些地方尋找賦值運(yùn)算符并報(bào)告給程序員可以減少誤報(bào)。不過這樣做有可能出現(xiàn)漏報(bào),因?yàn)榈扔谶\(yùn)算符允許出現(xiàn)在這些地方之外。

    3.4 Add-in的開發(fā)

    有關(guān)如何在VC 6.0中創(chuàng)建Add-in類型的項(xiàng)目、在Add-in的哪個(gè)函數(shù)中訪問項(xiàng)目文件、訪問項(xiàng)目文件之前應(yīng)該做哪些準(zhǔn)備工作、如何逐一訪問項(xiàng)目中的所有源文件和頭文件、如何在內(nèi)存中對各個(gè)文件的內(nèi)容進(jìn)行簡化以及如何輸出警告信息等,可以參考文獻(xiàn)[8]~文獻(xiàn)[10]。下面僅簡單介紹一下查找可能存在錯(cuò)誤之語句的位置及類型的方法步驟。

    (1)從文件開頭向后搜索“==”,一直到文件末尾。每搜索到一處,記錄正在分析的文件名、“==”所在的行號和問題類型。此時(shí)問題類型為“使用==”。

    (2)從文件開頭向后搜索“?”,一直到文件末尾。每搜索到一處,再從該處向前尋找最近的運(yùn)算符。如果它為賦值運(yùn)算符(注意等號未必是賦值運(yùn)算符,下同,不再說明),記錄正在分析的文件名、“?”所在的行號和問題類型。此時(shí)問題類型為“?:中使用=”。

    (3)從文件開頭向后搜索“if”(注意防止它是其他標(biāo)識符的一部分,下同,不再說明),一直到文件末尾。每搜索到一處,再從該處向后尋找最近且配對的左、右圓括號,并在其間搜索賦值運(yùn)算符。如果搜索到了,記錄正在分析的文件名、“if”所在的行號和問題類型。此時(shí)問題類型為“if中使用=”。

    (4)從文件開頭向后搜索“for”,一直到文件末尾。每搜索到一處,再從該處向后尋找最近且配對的左、右圓括號,接著在其間尋找兩個(gè)“;”,并在這兩個(gè)“;”之間搜索賦值運(yùn)算符。如果搜索到了,記錄正在分析的文件名、“for”所在的行號和問題類型。此時(shí)問題類型為“for中使用=”。

    (5)從文件開頭向后搜索“while”,一直到文件末尾。每搜索到一處,再從該處向后尋找最近且配對的左、右圓括號,并在其間搜索賦值運(yùn)算符。如果搜索到了,記錄正在分析的文件名、“while”所在的行號和問題類型。此時(shí)問題類型取決于上述右圓括號后面的第一個(gè)非空白字符。如果它為“;”,則問題類型為“do…while中使用=”,否則為“while中使用=”。

    3.5 Add-in的運(yùn)行結(jié)果

    Add-in開發(fā)好后,按照文獻(xiàn)[10]中所述方法使其外掛到VC 6.0中。然后重新打開上述Test項(xiàng)目,回退到未進(jìn)行修改之前,再執(zhí)行Build菜單命令,將彈出如圖2所示的對話框,給出警告信息。經(jīng)過測試,證明了它在大多數(shù)情況下能夠發(fā)現(xiàn)等于運(yùn)算符使用中可能存在的問題。

    圖2 發(fā)現(xiàn)問題時(shí)彈出的對話框

    4 結(jié)束語

    討論了C/C++中主動減少等于運(yùn)算符使用錯(cuò)誤的方法。開發(fā)的Add-in程序能夠自動尋找在VC 6.0中使用等于運(yùn)算符時(shí)可能出現(xiàn)錯(cuò)誤的地方,有助于程序員及時(shí)發(fā)現(xiàn)問題并采取正確措施,可以為廣大學(xué)生和工程技術(shù)人員學(xué)習(xí)、掌握及運(yùn)用C/C++程序設(shè)計(jì)提供幫助。事實(shí)上,當(dāng)開發(fā)的Add-in發(fā)現(xiàn)可能發(fā)生混淆錯(cuò)誤的地方時(shí),實(shí)際上有可能是其他類型的錯(cuò)誤。例如由于擊鍵不到位,應(yīng)該使用小于等于、大于等于或不等于運(yùn)算符的地方變成了使用賦值運(yùn)算符等。因此也可以減少出現(xiàn)這些錯(cuò)誤的可能性。這可以算是所開發(fā)的Add-in的額外收獲。

    [1]譚浩強(qiáng).C程序設(shè)計(jì)[M].4版.北京:清華大學(xué)出版社, 2010:359-360.

    [2]趙寶琴,袁志民.C/C++上機(jī)實(shí)驗(yàn)中的典型錯(cuò)誤[J].實(shí)驗(yàn)室科學(xué),2005(3):92-93.

    [3]萬權(quán)性,熊力維,李微.C語言常見錯(cuò)誤原因分析及防范[J].福建電腦,2010(12):167-168.

    [4]劉偉,支聯(lián)合.C語言教學(xué)中遇到的問題及解決辦法[J].重慶科技學(xué)院學(xué)報(bào):自然科學(xué)版,2009,11(2):136-138.

    [5]何斌,馬天予,王運(yùn)堅(jiān),等.Visual C++數(shù)字圖像處理[M].2版.北京:人民郵電出版社,2002:583-594.

    [6]郎銳.數(shù)字圖像處理學(xué)——Visual C++實(shí)現(xiàn)[M].北京:北京希望電子出版社,2002:387-395.

    [7]周冠方.C語言中浮點(diǎn)數(shù)精度問題分析[J].湖北工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào),2015,28(3):97-99.

    [8]張全法,齊永奇.用Add-in提高VC 6.0集成開發(fā)環(huán)境的查錯(cuò)能力研究[J].中原工學(xué)院學(xué)報(bào),2009,20(3):47-50.

    [9]張全法,陳倩.用Add-in減少VC 6.0中g(shù)oto語句使用錯(cuò)誤的研究[J].中原工學(xué)院學(xué)報(bào),2013,24(2):57-60.

    [10]張合花,齊永奇.減少后置自增自減運(yùn)算符非預(yù)期結(jié)果的研究[J].中原工學(xué)院學(xué)報(bào),2015,26(1):87-90.

    (責(zé)任編輯 趙冰)

    Study on Reducing Use Errors of Equality Operator in C/C++ Programming

    ZHANG He-hua1,ZHANG Quan-fa1,QI Yong-qi2

    (1.School of Physics and Engineering, Zhengzhou University, Zhengzhou 450001, China; 2.North China University of Water Resources and Electric Power, Zhengzhou 450045, China)

    Two kinds of common use errors of equality operator in C/C++ programming are discussed, one is to confuse with assignment operator and the other is to determine whether two floating point numbers are equal.For the programmers, some methods to reduce confusion with assignment operator and determine whether two floating point numbers are equal under different conditions are given.An Add-in is developed with VC 6.0 to find where maybe appear these kinds of errors and to notify the programmer to examine his program, thus to reduce the probability of errors from the perspective of the integrated development environment.

    C/C++ programming; equality operator; Add-in

    2015-12-21

    張合花(1970—),女,河南湯陰人,鄭州大學(xué)物理工程學(xué)院技師,主要研究方向?yàn)橛?jì)算機(jī)信息處理。

    10.13783/j.cnki.cn41-1275/g4.2016.02.023

    TP311.52

    A

    1008-3715(2016)02-0112-04

    猜你喜歡
    浮點(diǎn)數(shù)運(yùn)算符程序員
    為了讓媽媽看懂地圖,一位“野生程序員”做了個(gè)小程序
    老祖?zhèn)魇诨具\(yùn)算符
    四種Python均勻浮點(diǎn)數(shù)生成方法
    怎樣成為一名優(yōu)秀程序員
    幼兒100(2020年29期)2020-10-21 06:17:58
    程序員之子
    意林(2017年24期)2018-01-02 22:49:14
    在C語言中雙精度浮點(diǎn)數(shù)線性化相等比較的研究
    非精確浮點(diǎn)數(shù)乘法器設(shè)計(jì)
    加班
    三月三(2016年6期)2016-06-21 10:25:33
    C++運(yùn)算符重載剖析
    表達(dá)式求值及符號推導(dǎo)
    亚洲国产日韩一区二区| 自拍偷自拍亚洲精品老妇| 少妇熟女欧美另类| 亚洲国产成人一精品久久久| 黄色欧美视频在线观看| 少妇的逼水好多| 国产一区二区三区综合在线观看 | 小蜜桃在线观看免费完整版高清| 最后的刺客免费高清国语| 自拍欧美九色日韩亚洲蝌蚪91 | 亚洲精品亚洲一区二区| 国产精品一及| 五月伊人婷婷丁香| 亚洲欧洲日产国产| 简卡轻食公司| 毛片一级片免费看久久久久| 爱豆传媒免费全集在线观看| av一本久久久久| 99久国产av精品国产电影| 国产在线一区二区三区精| 日韩,欧美,国产一区二区三区| av天堂中文字幕网| 日本-黄色视频高清免费观看| 男的添女的下面高潮视频| 亚洲欧美精品专区久久| 亚洲欧美成人综合另类久久久| 高清日韩中文字幕在线| 人妻少妇偷人精品九色| 99热这里只有是精品在线观看| 婷婷色综合www| 春色校园在线视频观看| 亚洲av免费高清在线观看| 啦啦啦中文免费视频观看日本| 亚洲内射少妇av| 国产精品女同一区二区软件| 一级a做视频免费观看| 色婷婷av一区二区三区视频| 欧美精品人与动牲交sv欧美| 天天躁夜夜躁狠狠久久av| 亚洲精品aⅴ在线观看| 国产av精品麻豆| 精品熟女少妇av免费看| 99视频精品全部免费 在线| 国产熟女欧美一区二区| 成年美女黄网站色视频大全免费 | 春色校园在线视频观看| 亚洲人与动物交配视频| 亚洲av综合色区一区| 中文字幕免费在线视频6| 免费少妇av软件| 不卡视频在线观看欧美| 久久人妻熟女aⅴ| 久久99蜜桃精品久久| 亚洲国产欧美在线一区| 高清欧美精品videossex| 纯流量卡能插随身wifi吗| 亚洲第一av免费看| 国内少妇人妻偷人精品xxx网站| 精品久久久久久久久亚洲| 国产精品免费大片| av卡一久久| 中文乱码字字幕精品一区二区三区| 超碰97精品在线观看| 99久久人妻综合| 日韩国内少妇激情av| 国产免费福利视频在线观看| 自拍欧美九色日韩亚洲蝌蚪91 | 纯流量卡能插随身wifi吗| 亚洲人成网站在线观看播放| 亚洲色图av天堂| 亚洲av国产av综合av卡| 一区二区三区四区激情视频| 高清在线视频一区二区三区| 亚洲电影在线观看av| av国产免费在线观看| 久久久成人免费电影| xxx大片免费视频| 自拍欧美九色日韩亚洲蝌蚪91 | 国产黄片视频在线免费观看| 99热这里只有精品一区| 国产有黄有色有爽视频| 日本猛色少妇xxxxx猛交久久| 男人爽女人下面视频在线观看| 久久这里有精品视频免费| 国产精品一区二区性色av| 777米奇影视久久| 一级毛片我不卡| 久久精品夜色国产| 国产欧美亚洲国产| 亚洲欧美成人综合另类久久久| 亚洲婷婷狠狠爱综合网| av黄色大香蕉| 国产伦在线观看视频一区| 日韩av不卡免费在线播放| 中国三级夫妇交换| 亚洲四区av| 日韩一区二区视频免费看| 日韩av不卡免费在线播放| 精品一区在线观看国产| 毛片女人毛片| 久久精品国产亚洲网站| 在线观看免费视频网站a站| 人人妻人人澡人人爽人人夜夜| 国产精品无大码| 国产亚洲91精品色在线| 国产老妇伦熟女老妇高清| 国产大屁股一区二区在线视频| 欧美三级亚洲精品| 狂野欧美激情性xxxx在线观看| 国产精品国产三级国产专区5o| 人人妻人人爽人人添夜夜欢视频 | 波野结衣二区三区在线| 精品人妻视频免费看| 免费不卡的大黄色大毛片视频在线观看| 日日摸夜夜添夜夜爱| 中文字幕免费在线视频6| 精品国产一区二区三区久久久樱花 | .国产精品久久| 成人国产av品久久久| 精品久久久精品久久久| 精品亚洲成a人片在线观看 | 久久99热6这里只有精品| 亚洲无线观看免费| 亚洲精品,欧美精品| 欧美国产精品一级二级三级 | 成年免费大片在线观看| 人体艺术视频欧美日本| 一级毛片电影观看| 色视频www国产| 中文字幕制服av| 国产成人a∨麻豆精品| 2021少妇久久久久久久久久久| 国产精品久久久久久久久免| 亚洲精品一二三| 身体一侧抽搐| 亚洲av.av天堂| 午夜福利视频精品| 晚上一个人看的免费电影| 尾随美女入室| 亚洲真实伦在线观看| 男女国产视频网站| 日韩 亚洲 欧美在线| tube8黄色片| 国产探花极品一区二区| 在线观看av片永久免费下载| 自拍欧美九色日韩亚洲蝌蚪91 | 日日摸夜夜添夜夜添av毛片| 亚洲欧美日韩无卡精品| 成人影院久久| 精品亚洲乱码少妇综合久久| 日本黄大片高清| 激情五月婷婷亚洲| 久久精品国产鲁丝片午夜精品| 成年美女黄网站色视频大全免费 | 日韩中文字幕视频在线看片 | 欧美日韩精品成人综合77777| 六月丁香七月| 免费黄频网站在线观看国产| 久久毛片免费看一区二区三区| 精品熟女少妇av免费看| 久久99热这里只有精品18| 少妇裸体淫交视频免费看高清| 男人爽女人下面视频在线观看| 日本欧美视频一区| www.av在线官网国产| 亚洲欧美精品自产自拍| 日韩中字成人| 亚洲国产精品一区三区| 麻豆精品久久久久久蜜桃| 国产探花极品一区二区| 久久人人爽人人爽人人片va| 欧美高清性xxxxhd video| 高清黄色对白视频在线免费看 | 亚洲精品中文字幕在线视频 | 亚洲激情五月婷婷啪啪| 91在线精品国自产拍蜜月| 涩涩av久久男人的天堂| 91久久精品电影网| 777米奇影视久久| 亚洲欧美一区二区三区国产| 久久鲁丝午夜福利片| 美女国产视频在线观看| 欧美xxxx性猛交bbbb| h视频一区二区三区| 成人免费观看视频高清| 午夜激情福利司机影院| 午夜免费观看性视频| 人妻 亚洲 视频| 午夜福利网站1000一区二区三区| 日韩精品有码人妻一区| 女人十人毛片免费观看3o分钟| 国产精品久久久久久精品电影小说 | 内地一区二区视频在线| 欧美激情极品国产一区二区三区 | 天美传媒精品一区二区| 国产亚洲一区二区精品| 赤兔流量卡办理| 亚洲av日韩在线播放| 十分钟在线观看高清视频www | 亚洲精品国产色婷婷电影| 国产精品一区www在线观看| 成年女人在线观看亚洲视频| 在线看a的网站| 九九久久精品国产亚洲av麻豆| 久久韩国三级中文字幕| 一级av片app| kizo精华| 男女边摸边吃奶| 亚洲中文av在线| 精品人妻偷拍中文字幕| 一本—道久久a久久精品蜜桃钙片| 亚洲成人手机| 亚洲av综合色区一区| 欧美老熟妇乱子伦牲交| 欧美日韩一区二区视频在线观看视频在线| 亚洲av福利一区| 国产黄色视频一区二区在线观看| 一级毛片aaaaaa免费看小| 免费大片黄手机在线观看| 亚洲欧美日韩无卡精品| 久久久久久久精品精品| 男人爽女人下面视频在线观看| 日韩电影二区| 国产 一区精品| 精品一区在线观看国产| 国产美女午夜福利| 国产又色又爽无遮挡免| 日韩av不卡免费在线播放| 亚洲精品国产成人久久av| 成年免费大片在线观看| 亚洲国产日韩一区二区| 一级a做视频免费观看| 中文乱码字字幕精品一区二区三区| 小蜜桃在线观看免费完整版高清| 男女边摸边吃奶| 搡老乐熟女国产| 女的被弄到高潮叫床怎么办| 国产白丝娇喘喷水9色精品| 菩萨蛮人人尽说江南好唐韦庄| 97热精品久久久久久| 国产亚洲av片在线观看秒播厂| 美女脱内裤让男人舔精品视频| 男女啪啪激烈高潮av片| 欧美日韩视频高清一区二区三区二| 国产爽快片一区二区三区| 免费看光身美女| 日韩不卡一区二区三区视频在线| 最近中文字幕高清免费大全6| 极品教师在线视频| 亚洲色图av天堂| 草草在线视频免费看| 国产在视频线精品| 精品亚洲成a人片在线观看 | 国产亚洲最大av| 久久久久精品性色| 精品一区二区三卡| 91午夜精品亚洲一区二区三区| 伦理电影免费视频| 韩国av在线不卡| 免费看光身美女| 亚洲欧洲国产日韩| 午夜福利视频精品| 一个人免费看片子| 纵有疾风起免费观看全集完整版| 中文精品一卡2卡3卡4更新| 毛片女人毛片| a级一级毛片免费在线观看| 国产黄频视频在线观看| 中国国产av一级| 国产精品伦人一区二区| av福利片在线观看| 免费不卡的大黄色大毛片视频在线观看| 美女内射精品一级片tv| 欧美日韩亚洲高清精品| 亚洲国产日韩一区二区| 少妇人妻久久综合中文| 国内精品宾馆在线| 免费少妇av软件| 两个人的视频大全免费| 男女边吃奶边做爰视频| 最近的中文字幕免费完整| 亚洲,欧美,日韩| 欧美精品一区二区免费开放| 啦啦啦中文免费视频观看日本| 99久久人妻综合| 国产精品久久久久久久电影| 亚洲av福利一区| 欧美xxxx性猛交bbbb| 亚洲久久久国产精品| 日韩中字成人| 97热精品久久久久久| 小蜜桃在线观看免费完整版高清| 国产黄频视频在线观看| 免费观看无遮挡的男女| 极品教师在线视频| 最近中文字幕2019免费版| 高清av免费在线| 麻豆乱淫一区二区| 欧美激情极品国产一区二区三区 | 免费av中文字幕在线| 亚洲精品成人av观看孕妇| 国产在线视频一区二区| 国产成人91sexporn| 国产精品嫩草影院av在线观看| 免费人成在线观看视频色| 日韩人妻高清精品专区| 国产高清国产精品国产三级 | 最黄视频免费看| 夜夜骑夜夜射夜夜干| 大又大粗又爽又黄少妇毛片口| av播播在线观看一区| 男男h啪啪无遮挡| 国产成人精品一,二区| 免费高清在线观看视频在线观看| 久久6这里有精品| 97在线人人人人妻| 午夜福利高清视频| 久久99热这里只频精品6学生| 精品亚洲乱码少妇综合久久| 日韩欧美 国产精品| 久久久久久久精品精品| 精品亚洲成a人片在线观看 | 亚洲人与动物交配视频| 亚洲无线观看免费| www.色视频.com| 国产精品99久久99久久久不卡 | 国产男女内射视频| 免费看av在线观看网站| 波野结衣二区三区在线| 色哟哟·www| 色视频www国产| av福利片在线观看| 久久久精品94久久精品| 国产91av在线免费观看| 欧美精品一区二区大全| 国产亚洲午夜精品一区二区久久| 国产精品嫩草影院av在线观看| 伦精品一区二区三区| 99热网站在线观看| 午夜激情福利司机影院| 少妇高潮的动态图| 国产精品人妻久久久影院| 韩国高清视频一区二区三区| 一级毛片黄色毛片免费观看视频| 多毛熟女@视频| 久久精品国产a三级三级三级| 午夜福利网站1000一区二区三区| 国产综合精华液| 国产色爽女视频免费观看| 蜜臀久久99精品久久宅男| 一区二区三区免费毛片| 国产在线男女| 日本与韩国留学比较| 一二三四中文在线观看免费高清| 老女人水多毛片| 国产极品天堂在线| 久久韩国三级中文字幕| 久久精品熟女亚洲av麻豆精品| 哪个播放器可以免费观看大片| 高清欧美精品videossex| 尾随美女入室| 亚洲综合色惰| 国产乱来视频区| 大陆偷拍与自拍| 91久久精品国产一区二区三区| 一级av片app| 大话2 男鬼变身卡| 色视频在线一区二区三区| 涩涩av久久男人的天堂| 久久99蜜桃精品久久| 成人无遮挡网站| 午夜免费男女啪啪视频观看| 国产伦精品一区二区三区视频9| 久久久久精品性色| 三级经典国产精品| 麻豆国产97在线/欧美| 纯流量卡能插随身wifi吗| av在线蜜桃| 99久久精品一区二区三区| 亚洲精品亚洲一区二区| 最后的刺客免费高清国语| 亚洲久久久国产精品| 中文精品一卡2卡3卡4更新| 特大巨黑吊av在线直播| 国内少妇人妻偷人精品xxx网站| 91精品伊人久久大香线蕉| 国产av一区二区精品久久 | 国产成人a∨麻豆精品| 精品一品国产午夜福利视频| 国产一区二区在线观看日韩| 国产精品99久久99久久久不卡 | 嫩草影院入口| 赤兔流量卡办理| 国产无遮挡羞羞视频在线观看| 成人午夜精彩视频在线观看| 又大又黄又爽视频免费| 97精品久久久久久久久久精品| h日本视频在线播放| a级毛片免费高清观看在线播放| 亚洲精品成人av观看孕妇| 久久久久久久久久人人人人人人| 成人特级av手机在线观看| 老女人水多毛片| 日本与韩国留学比较| 青春草亚洲视频在线观看| 亚洲第一av免费看| 国产精品av视频在线免费观看| 免费黄色在线免费观看| 国产熟女欧美一区二区| 久久 成人 亚洲| 久久婷婷青草| 久久久久久久久大av| 亚洲成人一二三区av| 国产免费福利视频在线观看| 欧美zozozo另类| 国产伦在线观看视频一区| 日韩av免费高清视频| 亚洲精品一区蜜桃| 亚洲精品乱码久久久久久按摩| 能在线免费看毛片的网站| 小蜜桃在线观看免费完整版高清| 少妇人妻久久综合中文| 啦啦啦啦在线视频资源| 人体艺术视频欧美日本| 黄色怎么调成土黄色| 午夜视频国产福利| 国产精品人妻久久久影院| 国产欧美日韩一区二区三区在线 | 啦啦啦啦在线视频资源| 永久免费av网站大全| videossex国产| 久久久久国产网址| 亚洲精品国产色婷婷电影| 免费少妇av软件| 日韩制服骚丝袜av| 嘟嘟电影网在线观看| 亚洲一区二区三区欧美精品| 国产在视频线精品| www.av在线官网国产| 亚洲av电影在线观看一区二区三区| 国产日韩欧美在线精品| 九九久久精品国产亚洲av麻豆| 男人狂女人下面高潮的视频| 国内少妇人妻偷人精品xxx网站| 亚洲va在线va天堂va国产| 国产成人精品福利久久| 成人漫画全彩无遮挡| 精品视频人人做人人爽| 国产午夜精品久久久久久一区二区三区| 视频中文字幕在线观看| 午夜免费观看性视频| 91aial.com中文字幕在线观看| 青青草视频在线视频观看| 精品人妻熟女av久视频| 99精国产麻豆久久婷婷| 久久青草综合色| 久久久欧美国产精品| 高清av免费在线| 一个人免费看片子| 日本vs欧美在线观看视频 | 久久久久久人妻| 亚洲欧美日韩无卡精品| 国产美女午夜福利| 免费观看av网站的网址| 午夜免费鲁丝| 欧美+日韩+精品| 成人18禁高潮啪啪吃奶动态图 | 日韩中字成人| 韩国高清视频一区二区三区| 午夜日本视频在线| 国产精品熟女久久久久浪| 国产黄片美女视频| 一区二区三区四区激情视频| 高清视频免费观看一区二区| 久久久国产一区二区| 亚洲人成网站在线播| 久久精品国产自在天天线| 狂野欧美激情性bbbbbb| 亚洲欧美一区二区三区黑人 | 日韩不卡一区二区三区视频在线| 国产69精品久久久久777片| 免费高清在线观看视频在线观看| 亚洲欧美一区二区三区国产| 日本黄大片高清| 日本欧美国产在线视频| 波野结衣二区三区在线| 毛片一级片免费看久久久久| 欧美激情极品国产一区二区三区 | 51国产日韩欧美| 午夜福利网站1000一区二区三区| 少妇猛男粗大的猛烈进出视频| 日韩在线高清观看一区二区三区| 夫妻午夜视频| 日韩欧美一区视频在线观看 | 国产高清国产精品国产三级 | 免费久久久久久久精品成人欧美视频 | 国产亚洲午夜精品一区二区久久| 成人一区二区视频在线观看| 中文精品一卡2卡3卡4更新| 少妇精品久久久久久久| 观看av在线不卡| 美女视频免费永久观看网站| 交换朋友夫妻互换小说| 日韩欧美精品免费久久| 看十八女毛片水多多多| 毛片一级片免费看久久久久| 久久鲁丝午夜福利片| 欧美性感艳星| 国产精品不卡视频一区二区| 激情 狠狠 欧美| 美女中出高潮动态图| 男女免费视频国产| 少妇猛男粗大的猛烈进出视频| 免费看光身美女| 搡女人真爽免费视频火全软件| 成年免费大片在线观看| 国产女主播在线喷水免费视频网站| 性色avwww在线观看| 久久国产精品大桥未久av | 久久韩国三级中文字幕| 人妻一区二区av| 亚洲国产精品一区三区| 午夜免费男女啪啪视频观看| 国产精品免费大片| 免费黄频网站在线观看国产| 高清日韩中文字幕在线| 中文字幕人妻熟人妻熟丝袜美| 亚洲av男天堂| 国产大屁股一区二区在线视频| 26uuu在线亚洲综合色| 婷婷色av中文字幕| 亚洲av中文av极速乱| 国产亚洲一区二区精品| 久久99精品国语久久久| 韩国高清视频一区二区三区| 国产精品无大码| 成人二区视频| 欧美日韩精品成人综合77777| 亚洲成人一二三区av| 精华霜和精华液先用哪个| 国产v大片淫在线免费观看| 欧美日韩精品成人综合77777| 国产精品久久久久久久久免| 国产精品无大码| 国产v大片淫在线免费观看| 日韩中字成人| 欧美 日韩 精品 国产| 在线观看一区二区三区| 九九爱精品视频在线观看| 美女主播在线视频| 国产精品伦人一区二区| 日本色播在线视频| 成人二区视频| 一区在线观看完整版| 女的被弄到高潮叫床怎么办| 少妇人妻一区二区三区视频| 国产视频内射| 久久99精品国语久久久| 超碰97精品在线观看| 街头女战士在线观看网站| 亚洲精品456在线播放app| 3wmmmm亚洲av在线观看| 欧美 日韩 精品 国产| 99热国产这里只有精品6| 亚洲精品乱码久久久v下载方式| av免费观看日本| 干丝袜人妻中文字幕| 街头女战士在线观看网站| 亚洲av综合色区一区| 精品久久久久久久久亚洲| 狠狠精品人妻久久久久久综合| 亚洲欧美成人综合另类久久久| 国产久久久一区二区三区| 国产成人免费观看mmmm| 欧美成人午夜免费资源| 七月丁香在线播放| 丝袜喷水一区| 精品久久久久久久久av| 在线观看免费视频网站a站| 91久久精品国产一区二区三区| 日日摸夜夜添夜夜添av毛片| 日韩强制内射视频| 国产成人一区二区在线| 亚洲欧美日韩卡通动漫| av天堂中文字幕网| 亚洲av免费高清在线观看| 日韩一本色道免费dvd| 亚洲精品第二区| 国产真实伦视频高清在线观看| 国产无遮挡羞羞视频在线观看| 久久精品久久久久久噜噜老黄| 日日啪夜夜爽| 欧美精品国产亚洲| 国产欧美日韩精品一区二区| 亚洲国产欧美人成| 免费看不卡的av| 久久人人爽av亚洲精品天堂 | 五月玫瑰六月丁香| 亚洲精品国产av蜜桃| 日韩精品有码人妻一区| 亚洲精品乱码久久久v下载方式| 深夜a级毛片| 国产美女午夜福利| 欧美精品一区二区免费开放| 欧美日韩亚洲高清精品| 日本vs欧美在线观看视频 | 国产欧美日韩精品一区二区| 青青草视频在线视频观看| 免费大片黄手机在线观看| 18禁裸乳无遮挡免费网站照片| 寂寞人妻少妇视频99o| 99热全是精品| 亚洲国产av新网站| 美女中出高潮动态图| 狂野欧美激情性xxxx在线观看|