• <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)
    精品久久久久久久毛片微露脸| 黄片大片在线免费观看| 搡老岳熟女国产| 欧美午夜高清在线| 免费看a级黄色片| 国产亚洲精品第一综合不卡| 村上凉子中文字幕在线| 久久国产乱子伦精品免费另类| 国产欧美日韩一区二区三| 国产精品久久久av美女十八| 黄色女人牲交| 欧美黄色片欧美黄色片| 国产精品免费一区二区三区在线| 亚洲美女黄片视频| 女警被强在线播放| 免费看a级黄色片| 午夜福利18| 国产成人系列免费观看| 亚洲国产精品sss在线观看| 精品欧美国产一区二区三| 性色av乱码一区二区三区2| 精品电影一区二区在线| 一边摸一边抽搐一进一出视频| 欧美大码av| 久久久国产成人精品二区| 十八禁人妻一区二区| 日韩欧美免费精品| 亚洲成av片中文字幕在线观看| 亚洲精品在线观看二区| 亚洲国产高清在线一区二区三 | 高潮久久久久久久久久久不卡| 在线观看日韩欧美| 亚洲五月天丁香| 成人国产一区最新在线观看| 一二三四在线观看免费中文在| 亚洲av片天天在线观看| 最近最新中文字幕大全电影3 | 国产精品,欧美在线| 国产成人系列免费观看| 国产欧美日韩一区二区三区在线| 亚洲av五月六月丁香网| 国产亚洲精品av在线| 国产精品一区二区免费欧美| 国产亚洲欧美精品永久| 精品无人区乱码1区二区| 久久九九热精品免费| 亚洲aⅴ乱码一区二区在线播放 | 欧美久久黑人一区二区| 十分钟在线观看高清视频www| 一区在线观看完整版| 日本 欧美在线| 制服丝袜大香蕉在线| 成人免费观看视频高清| 欧美黑人欧美精品刺激| 97人妻精品一区二区三区麻豆 | 夜夜躁狠狠躁天天躁| 久久久久国产一级毛片高清牌| 免费搜索国产男女视频| 国产一区二区三区在线臀色熟女| 亚洲国产看品久久| 在线视频色国产色| 精品电影一区二区在线| 亚洲精品中文字幕在线视频| 曰老女人黄片| 无限看片的www在线观看| 欧美最黄视频在线播放免费| 久久久久精品国产欧美久久久| 97超级碰碰碰精品色视频在线观看| 久久这里只有精品19| 中文字幕人妻熟女乱码| 久久香蕉激情| 操出白浆在线播放| 麻豆国产av国片精品| 后天国语完整版免费观看| 一区二区三区精品91| 视频在线观看一区二区三区| 俄罗斯特黄特色一大片| 成人亚洲精品一区在线观看| 黄片小视频在线播放| 亚洲第一青青草原| 亚洲av美国av| 国产精品二区激情视频| 国产成年人精品一区二区| av视频免费观看在线观看| 欧美老熟妇乱子伦牲交| 美女高潮喷水抽搐中文字幕| 宅男免费午夜| 一二三四社区在线视频社区8| 亚洲,欧美精品.| 亚洲激情在线av| 欧美老熟妇乱子伦牲交| 亚洲av美国av| 长腿黑丝高跟| 琪琪午夜伦伦电影理论片6080| 久久久久久国产a免费观看| 久久久国产精品麻豆| 久久久精品欧美日韩精品| 精品免费久久久久久久清纯| av视频在线观看入口| 满18在线观看网站| 狠狠狠狠99中文字幕| 制服丝袜大香蕉在线| 免费人成视频x8x8入口观看| 性色av乱码一区二区三区2| 欧美成人性av电影在线观看| 两个人视频免费观看高清| 男女下面插进去视频免费观看| 大型av网站在线播放| 国产精品久久久久久人妻精品电影| 精品免费久久久久久久清纯| 啪啪无遮挡十八禁网站| 一边摸一边抽搐一进一小说| 欧美成狂野欧美在线观看| 69精品国产乱码久久久| 99香蕉大伊视频| tocl精华| 欧美色视频一区免费| 午夜精品久久久久久毛片777| 日本 av在线| 国产欧美日韩一区二区三| 欧美黄色片欧美黄色片| 国产欧美日韩精品亚洲av| 99国产精品免费福利视频| 欧美黑人欧美精品刺激| 亚洲久久久国产精品| 亚洲精品粉嫩美女一区| 视频区欧美日本亚洲| 少妇裸体淫交视频免费看高清 | 国产成人av教育| 性欧美人与动物交配| 老司机福利观看| 国产人伦9x9x在线观看| 成人欧美大片| 韩国av一区二区三区四区| 老司机深夜福利视频在线观看| 在线十欧美十亚洲十日本专区| 老司机在亚洲福利影院| 在线观看www视频免费| 韩国精品一区二区三区| 亚洲国产毛片av蜜桃av| 国产不卡一卡二| 久久中文看片网| 91成年电影在线观看| 亚洲九九香蕉| 日韩av在线大香蕉| 一级,二级,三级黄色视频| 午夜免费激情av| 好男人在线观看高清免费视频 | 午夜精品在线福利| 日本一区二区免费在线视频| 美女 人体艺术 gogo| 最新在线观看一区二区三区| 美女扒开内裤让男人捅视频| xxx96com| 色综合婷婷激情| 日韩精品中文字幕看吧| 一区二区三区激情视频| 嫩草影视91久久| 97人妻精品一区二区三区麻豆 | 美女国产高潮福利片在线看| 夜夜看夜夜爽夜夜摸| 91字幕亚洲| 亚洲自拍偷在线| 精品一品国产午夜福利视频| 亚洲第一青青草原| 亚洲av电影在线进入| 免费人成视频x8x8入口观看| 99在线视频只有这里精品首页| aaaaa片日本免费| 自拍欧美九色日韩亚洲蝌蚪91| 精品久久蜜臀av无| 欧美大码av| 真人做人爱边吃奶动态| 亚洲av五月六月丁香网| 老熟妇仑乱视频hdxx| 亚洲国产精品999在线| 国产高清激情床上av| 一二三四社区在线视频社区8| 日韩视频一区二区在线观看| 亚洲aⅴ乱码一区二区在线播放 | 97人妻天天添夜夜摸| 精品国产超薄肉色丝袜足j| 精品久久久久久,| 亚洲视频免费观看视频| 天天添夜夜摸| a级毛片在线看网站| 日韩有码中文字幕| 国产成人啪精品午夜网站| 日日夜夜操网爽| 欧美绝顶高潮抽搐喷水| 亚洲欧美精品综合一区二区三区| 老汉色∧v一级毛片| 欧美日本亚洲视频在线播放| 91麻豆精品激情在线观看国产| 国产精品九九99| 夜夜爽天天搞| 欧美日韩一级在线毛片| 国产亚洲欧美98| 色av中文字幕| 日日夜夜操网爽| 亚洲一区中文字幕在线| 天天躁夜夜躁狠狠躁躁| 男人舔女人下体高潮全视频| 99热只有精品国产| 51午夜福利影视在线观看| 午夜精品在线福利| 中出人妻视频一区二区| 欧美最黄视频在线播放免费| 欧美日韩精品网址| 午夜精品国产一区二区电影| 亚洲国产毛片av蜜桃av| 一二三四社区在线视频社区8| 国产成人精品久久二区二区91| 禁无遮挡网站| 中出人妻视频一区二区| 中文字幕av电影在线播放| 9热在线视频观看99| 国产精品久久久久久亚洲av鲁大| 日韩欧美一区视频在线观看| 免费高清在线观看日韩| 大香蕉久久成人网| 精品久久蜜臀av无| 人成视频在线观看免费观看| 在线观看日韩欧美| 国产精品一区二区在线不卡| 欧美日本视频| 一进一出抽搐gif免费好疼| 国产一区在线观看成人免费| 国产黄a三级三级三级人| 日本 欧美在线| 黄色片一级片一级黄色片| www.精华液| 久久久久久久久中文| 女同久久另类99精品国产91| 亚洲自拍偷在线| 亚洲精品美女久久久久99蜜臀| 久久亚洲真实| 热99re8久久精品国产| 国产精品永久免费网站| 搡老熟女国产l中国老女人| 久久婷婷成人综合色麻豆| 一区二区日韩欧美中文字幕| 国产精品av久久久久免费| 日韩高清综合在线| 国产区一区二久久| 高潮久久久久久久久久久不卡| 曰老女人黄片| 最好的美女福利视频网| 88av欧美| 免费搜索国产男女视频| 欧美黄色淫秽网站| 国产激情欧美一区二区| 黄色成人免费大全| 日韩成人在线观看一区二区三区| 国产午夜精品久久久久久| 中国美女看黄片| 成人亚洲精品av一区二区| 一区二区三区国产精品乱码| 亚洲精品国产区一区二| 在线观看一区二区三区| 免费高清在线观看日韩| 一级作爱视频免费观看| 久久伊人香网站| 亚洲午夜精品一区,二区,三区| www.自偷自拍.com| 长腿黑丝高跟| 亚洲五月婷婷丁香| 日韩欧美在线二视频| 搞女人的毛片| av中文乱码字幕在线| 国产一区二区三区综合在线观看| www.www免费av| 成熟少妇高潮喷水视频| 精品久久久精品久久久| 一区二区三区高清视频在线| 少妇被粗大的猛进出69影院| 搡老妇女老女人老熟妇| 国产成人av教育| 一级毛片精品| 我的亚洲天堂| 91大片在线观看| 成人永久免费在线观看视频| 夜夜看夜夜爽夜夜摸| 精品国产美女av久久久久小说| 中文字幕另类日韩欧美亚洲嫩草| 精品国产一区二区久久| 久久热在线av| 一边摸一边做爽爽视频免费| 国产精品久久久人人做人人爽| 俄罗斯特黄特色一大片| 日本撒尿小便嘘嘘汇集6| 麻豆一二三区av精品| 12—13女人毛片做爰片一| 亚洲av美国av| 桃红色精品国产亚洲av| 级片在线观看| 免费无遮挡裸体视频| 在线观看一区二区三区| 两个人视频免费观看高清| 成人国语在线视频| 亚洲国产欧美网| 国产精品影院久久| 90打野战视频偷拍视频| 在线观看免费午夜福利视频| 国产成人av激情在线播放| 国产一区二区三区视频了| 99热只有精品国产| a在线观看视频网站| 高清在线国产一区| 97人妻天天添夜夜摸| av欧美777| 久久久久久久久久久久大奶| 老司机福利观看| 老熟妇乱子伦视频在线观看| av欧美777| 久久亚洲真实| 国产精品 欧美亚洲| 亚洲国产精品合色在线| av在线播放免费不卡| 久久人妻熟女aⅴ| 久久久久久亚洲精品国产蜜桃av| 韩国av一区二区三区四区| 久久久久亚洲av毛片大全| or卡值多少钱| aaaaa片日本免费| 亚洲一区二区三区不卡视频| 婷婷精品国产亚洲av在线| 成人亚洲精品一区在线观看| 日韩有码中文字幕| 中文字幕高清在线视频| 亚洲精品在线观看二区| 嫩草影院精品99| 久久久国产成人精品二区| 无限看片的www在线观看| 美女免费视频网站| 国产成人精品无人区| 在线av久久热| 99国产精品一区二区三区| 亚洲国产看品久久| 国产精品 国内视频| 级片在线观看| 999久久久精品免费观看国产| 国产精品二区激情视频| 久9热在线精品视频| 久久 成人 亚洲| 国产精品久久久久久亚洲av鲁大| 亚洲人成77777在线视频| 老司机午夜十八禁免费视频| 99久久国产精品久久久| 久久久久国产精品人妻aⅴ院| 99在线人妻在线中文字幕| 一进一出抽搐动态| 午夜日韩欧美国产| 午夜福利18| 亚洲一码二码三码区别大吗| 校园春色视频在线观看| 国产精品1区2区在线观看.| 精品人妻在线不人妻| 国产成人精品无人区| 久久久久精品国产欧美久久久| 在线观看www视频免费| 日韩三级视频一区二区三区| 国内精品久久久久久久电影| 又黄又粗又硬又大视频| 美女大奶头视频| 久久精品成人免费网站| 人人澡人人妻人| 午夜福利高清视频| 极品教师在线免费播放| 可以免费在线观看a视频的电影网站| 成人国产综合亚洲| 国产免费av片在线观看野外av| 国产亚洲av嫩草精品影院| 国产精品电影一区二区三区| 波多野结衣高清无吗| 久久人妻福利社区极品人妻图片| 久久久久国产一级毛片高清牌| 国语自产精品视频在线第100页| 亚洲成人国产一区在线观看| 麻豆国产av国片精品| 热re99久久国产66热| 亚洲精品一区av在线观看| 亚洲欧美一区二区三区黑人| www.精华液| 亚洲熟女毛片儿| 国产av精品麻豆| 久久人妻福利社区极品人妻图片| 校园春色视频在线观看| 一区二区三区激情视频| 国产精品日韩av在线免费观看 | 亚洲欧美激情在线| 人人妻人人爽人人添夜夜欢视频| 女警被强在线播放| 欧美性长视频在线观看| 一进一出好大好爽视频| 后天国语完整版免费观看| 热re99久久国产66热| 日韩成人在线观看一区二区三区| cao死你这个sao货| 最近最新中文字幕大全电影3 | 国内精品久久久久精免费| 韩国精品一区二区三区| 91av网站免费观看| 多毛熟女@视频| 12—13女人毛片做爰片一| 国产av精品麻豆| 久久伊人香网站| 欧美一区二区精品小视频在线| 久久中文字幕人妻熟女| 免费久久久久久久精品成人欧美视频| 国产精品亚洲一级av第二区| 国产一区二区在线av高清观看| 十分钟在线观看高清视频www| 九色亚洲精品在线播放| 国产一区二区三区综合在线观看| 欧美丝袜亚洲另类 | 夜夜爽天天搞| 日日夜夜操网爽| 天天躁狠狠躁夜夜躁狠狠躁| 啪啪无遮挡十八禁网站| 亚洲 欧美一区二区三区| 午夜免费成人在线视频| 亚洲一码二码三码区别大吗| 夜夜躁狠狠躁天天躁| av中文乱码字幕在线| 免费搜索国产男女视频| 亚洲色图综合在线观看| 亚洲成人精品中文字幕电影| 十八禁人妻一区二区| 一区二区三区国产精品乱码| 日韩精品免费视频一区二区三区| 欧美乱妇无乱码| 久久精品亚洲精品国产色婷小说| 午夜福利一区二区在线看| 麻豆国产av国片精品| 女性被躁到高潮视频| 欧美日本中文国产一区发布| 欧美黄色淫秽网站| 亚洲成人免费电影在线观看| 91成年电影在线观看| 成人18禁在线播放| 每晚都被弄得嗷嗷叫到高潮| 日本a在线网址| 亚洲 欧美一区二区三区| 亚洲国产毛片av蜜桃av| 日韩高清综合在线| 精品久久久精品久久久| 一进一出好大好爽视频| 很黄的视频免费| 亚洲熟女毛片儿| 久久人妻福利社区极品人妻图片| 久久影院123| 村上凉子中文字幕在线| a在线观看视频网站| 欧美乱码精品一区二区三区| 亚洲激情在线av| 性少妇av在线| 一区二区三区激情视频| 日韩欧美免费精品| 久久人妻av系列| 一区福利在线观看| 国产一区二区在线av高清观看| 中文字幕色久视频| 亚洲成人久久性| 午夜亚洲福利在线播放| 久久久久久久久免费视频了| 久久国产精品男人的天堂亚洲| 91国产中文字幕| 亚洲一区二区三区不卡视频| 88av欧美| 精品午夜福利视频在线观看一区| 一区二区三区高清视频在线| 两个人视频免费观看高清| 亚洲色图综合在线观看| 午夜福利一区二区在线看| 可以在线观看的亚洲视频| 国语自产精品视频在线第100页| 90打野战视频偷拍视频| 久久午夜综合久久蜜桃| 91成人精品电影| 欧美人与性动交α欧美精品济南到| 欧美绝顶高潮抽搐喷水| 亚洲精品国产精品久久久不卡| 国产成人啪精品午夜网站| 婷婷精品国产亚洲av在线| 一区二区三区精品91| www日本在线高清视频| 国产一区二区在线av高清观看| 欧美一级毛片孕妇| 精品电影一区二区在线| 日本 欧美在线| 成人永久免费在线观看视频| 国产精品一区二区三区四区久久 | 美女高潮到喷水免费观看| 亚洲国产中文字幕在线视频| 国产三级在线视频| 91国产中文字幕| 午夜激情av网站| 免费看美女性在线毛片视频| 怎么达到女性高潮| 亚洲精品久久成人aⅴ小说| 国产精品秋霞免费鲁丝片| 成人特级黄色片久久久久久久| av视频在线观看入口| 亚洲av片天天在线观看| 黄片小视频在线播放| 成人三级做爰电影| 人人妻,人人澡人人爽秒播| 制服诱惑二区| av免费在线观看网站| 久久人妻福利社区极品人妻图片| 欧美一级a爱片免费观看看 | 精品无人区乱码1区二区| 成人特级黄色片久久久久久久| 亚洲欧美一区二区三区黑人| 午夜日韩欧美国产| 深夜精品福利| 中文字幕最新亚洲高清| 国产精品香港三级国产av潘金莲| 国产麻豆69| 不卡一级毛片| 一级,二级,三级黄色视频| 中文字幕精品免费在线观看视频| 久久久久久久午夜电影| 女人精品久久久久毛片| 777久久人妻少妇嫩草av网站| 日韩三级视频一区二区三区| 国产高清videossex| 国产又爽黄色视频| 国产精品美女特级片免费视频播放器 | 精品久久蜜臀av无| 18禁观看日本| 国产欧美日韩一区二区精品| 国产精品免费视频内射| 欧美日韩乱码在线| 咕卡用的链子| 久久久久久久午夜电影| 中文字幕久久专区| 国产91精品成人一区二区三区| 91麻豆av在线| 亚洲国产精品sss在线观看| 非洲黑人性xxxx精品又粗又长| 亚洲精品在线美女| 男人的好看免费观看在线视频 | 制服丝袜大香蕉在线| 成人精品一区二区免费| 黄色视频不卡| 中文字幕久久专区| 在线免费观看的www视频| 日本三级黄在线观看| 男人舔女人下体高潮全视频| 久久久国产成人精品二区| 久久久久亚洲av毛片大全| 欧美日韩福利视频一区二区| 亚洲一区二区三区色噜噜| 18美女黄网站色大片免费观看| 色婷婷久久久亚洲欧美| 亚洲七黄色美女视频| 亚洲一区二区三区不卡视频| 淫秽高清视频在线观看| 人妻丰满熟妇av一区二区三区| 欧美黄色片欧美黄色片| 久久午夜综合久久蜜桃| 美女免费视频网站| 在线观看日韩欧美| 亚洲精品国产区一区二| 国产成人影院久久av| 免费无遮挡裸体视频| 国产高清有码在线观看视频 | 欧美一区二区精品小视频在线| 一区二区三区精品91| 久热爱精品视频在线9| 日韩视频一区二区在线观看| 中文字幕av电影在线播放| 亚洲熟妇熟女久久| 精品国产乱子伦一区二区三区| 免费在线观看完整版高清| 色尼玛亚洲综合影院| 久久精品aⅴ一区二区三区四区| 欧美中文综合在线视频| 日本欧美视频一区| 少妇的丰满在线观看| 久久人人精品亚洲av| 国产成人一区二区三区免费视频网站| 成人国产一区最新在线观看| 人人妻人人澡人人看| 97碰自拍视频| 亚洲欧美激情在线| a在线观看视频网站| 亚洲人成网站在线播放欧美日韩| a在线观看视频网站| 身体一侧抽搐| 亚洲成av人片免费观看| 成人国产综合亚洲| 色播亚洲综合网| 又黄又爽又免费观看的视频| 亚洲国产精品成人综合色| 少妇熟女aⅴ在线视频| 亚洲人成77777在线视频| 黑人操中国人逼视频| 久久香蕉国产精品| 国产在线精品亚洲第一网站| 亚洲成人国产一区在线观看| 精品第一国产精品| 日本精品一区二区三区蜜桃| 淫妇啪啪啪对白视频| 深夜精品福利| 啦啦啦观看免费观看视频高清 | 精品久久久久久成人av| 国产精品久久久久久人妻精品电影| 欧美日韩黄片免| 免费不卡黄色视频| 在线视频色国产色| 在线av久久热| 美女免费视频网站|