日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C/C++ 踩过的坑和防御式编程

發布時間:2025/3/12 c/c++ 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C/C++ 踩过的坑和防御式编程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

相信你或多或少地用過或者了解過 C/C++,盡管今天越來越少地人直接使用它,但今天軟件世界大多數軟件都構筑于它,包括編譯器和操作系統。因此掌握一些 C/C++ 技能的重要性不言而喻。

這場 Chat 本人將從小處入手,以親身踩過的坑作為示例,講述一下 C++ 的常見的坑,以及其防御方法——防御式編程。主要內容包括:

  • C/C++ 基礎知識簡介

  • C/C++ 常見問題復現示例

  • 內存泄露問題排查

  • 防御式編程理論

  • 防御式編程實踐


大家好,我是林奇思妙想。很高興能夠和各位在Gitchat上交流一些平常用C/C++, 寫 C/C++ 的經驗分享。

為了表明這是一場嚴肅的、有深度的交流,我們先不走偏,先回顧一下經典教材上關于C/C++的基礎知識。盡量保持簡單,點到為止,希望你沒有被嚇走。作為一枚典型猿族,我就話不多說,直接帶領大家入坑(笑~)。

注:所有的程序示例在MS VS2017下調試的。

C/C++ 基礎知識簡介

我們說到 C/C++ 一般指兩部分:

  • C++兼容 C 的部分

  • C++獨有部分

先看一下C/C++共有部分(有基礎的同學可以略過這一部分, 或者可以跟我一起溫習)。

C/C++ 共有部分

常量

常量是指運行時值不能改動的一類“變量”,他們的值是編譯進目標程序中的。

1)立即數

如字面常量 12, 123.5f, "abc".

2)常量對象

const int SIZE_A = 11; const Mat MAT_A(12,22,-1);

變量在運行時占有內存地址空間,且它的值可以在運行時被更改

變量

1)普通值變量

float a = 9.1f; Mat mat_a(1,2,-1);

2)指針變量 p_a

int *p_a = &a;

表達式

表達式是指能被編譯器編譯為指令的語句,通常以“;”結束。

表達式分以下幾種:

1)賦值

int a = 4;

2)逗號

a = 9, b = 11;

3)判斷

if (a > b){do_something();}

4)循環

for(int i=0; i<MAX; i++){do_something(); }

5)函數調用

do_something();

其它數據結構

結構體等

struct st_a{int x; int y; };

通常是 public 的,即沒有封裝性。

C++獨有

類是C++所獨有,也稱對象。通常我們用一個類來表示一類客觀事物的層次、繼承關系。

如下圖所示:

圖 0.1 類的繼承關系

1)繼承

繼承就如0.1所示,從父類到子類,越來越具體。

2)封裝

封裝是指對于某一子類,可以控制哪些信息能被外部看到,如控制我們能獲取手機的大小,顏色等屬性,對用戶隱藏手機串號等信息。

3)多態

多態是C++精華所在,但也是C++的難點所在。一些教材常常用高大上的描述把人搞昏。譬如我手邊這本書里面是這樣講多態的(C++程序設計教程——錢能版):

“ 多態是基于類的層次結構的,當指針飄忽不定地可能指向類層次中的上下不同對象時,以指針間訪的形式實施的操作便是表現多態的條件。”

這段文字真是一騎絕塵,不食人間煙火,難免把人帶到小黑屋子——關著。

用通俗的話說,多態是指多個子類有一個共有操作,我們在父類中定義一個統一的抽象虛接口,然后各個子類分別實現。這樣子,運行時,依據子類是什么,動態選擇子類的方法。 這樣子描述,我們又不可避免地走入了經典教材的巨梗——不懂啊! 不如直接看如下代碼吧。

如下代碼所示:

// code start /* B is base class, A -- C is sub-class*/class B {public:virtual void do_sth() = 0;};class A : public B {public:void do_sth() {cout << "- A do_sth()\n"; }};class C : public B {public:void do_sth() {cout << "- C do_sth()\n";}};void do_sth(B *id_b) {id_b->do_sth(); }int main(){A* id_a = new A(); C* id_c = new C(); do_sth(id_a); do_sth(id_c); return 0; }// code end

函數運行輸出結果是:

A do_sth()C do_sth()

注意其中的粗體代碼。

看“ void dosth(B *idb)” , 我們用的基類指針作為函數的接口參數,但是“dosth(ida); ” 傳遞參數時,我們傳的是A 或者 C 對象的指針! 多態使得調用的接口一致,更利于抽象和簡化。

C/C++ 常見問題復現示例

如果算上最新接觸C到現在,已經有9年。寫過無數的C/C++代碼。有些坑是自己挖的,有些則是語言層面上的“陷阱” 。

坑1

立即數左移越出范圍。先看一段代碼:

assert((1 << 3) == pow(2, 3));assert((1 << 30) == pow(2, 30));assert((1 << 62) == pow(2, 62));

先不運行,猜測一下問題在哪一行?

運行結果如下:

Assertion failed: (1 << 62) == pow(2, 62), file

我們再進一步看一下他們的值:

cout << pow(2, 62) << endl; cout << (1 << 62) << endl; 4.61169e+18 0

可知前者是對的,后者是錯的,在C語言中,左移結果最大是 32 位。

為了驗證,我們再看一下:

cout << pow(2, 62) << endl; cout << (1 << 62) << endl; cout << (4.61169e+18) << endl;

運行結果是:

4.61169e+18 0 4.61169e+18

符合我們的預期。

坑2

sprintf()越界問題。

char buf[10]; float x = 1/3.0f; sprintf(buf, "cols = %f", x); printf(buf);

運行后,buf會越界,出現地址異常!正確的做法是給 buf 一個更大的地址。 但是這類棧溢出在大型的工程中,防不勝防。其實可以在 C++ 中,考慮用更一種更安全的方式。

float f = 1 / 3.0f;ostringstream ss;ss << "num is " << f << endl;cout << ss.str();

坑 3

case語句,不打括號。

// 示例代碼K_0 :

int num = 2; switch (num){case 0:do_0(); break; case 1:do_1();do_xx();do_xxx(); do_xxxx();break;default:do_default(); }// code end

這段代碼運行起來沒有問題,

邏輯沒有問題,還不至于成坑,但是在實際的大型項目中,一個項目因需求變化可能需要頻繁改動。如上述代碼,有人在"do_xxxx()"后加上另外一個分支。變成:

do_xx();do_xxx(); do_xxxx(); case 2:do_2(); do_2_x(); do_2_xx();break;

這個時候邏輯就會出問題。而且這種錯誤很難調試,最好的辦法是預防。 預防的方法也很簡單,給case分支加上大括號。如下:

switch (num){case 0:{ do_0();break;}case 1:{do_1();do_xx();do_xxx();do_xxxx();break;}default:{do_default();}}

這種方法看起來很笨,但比后期要發布前出bug, 把班加個昏天黑地要強。

坑4

sizeof()用于一個結構體時其值不是絕對的。與平臺相關,也與編譯指令相關。看例子:

struct pack_struct{char t;uint32_t x; };cout << sizeof(pack_struct);

輸出是什么?

有很多同學一看,說這個容易,?char?占用一個字節,?uint32_t?占用 4 個字節,所以共占用 5 個字節。還有同學想到了4字節對齊,說應該是4的倍數,所以應該是8。那正確的結果又是什么呢?

其實答案是:兩者都有可能。與編譯控制有關。要想結果得到“5”, 用下面的:

#pragma pack(1)struct pack_struct{char t;uint32_t x; };#pragma pack()

要想得到“8”, 把pack(1)?改成pack(4)。

一般默認的編譯參數,不同的平臺是不一樣的。所以要求我們不能寫硬編碼的代碼。例如下面的代碼將得不到我們想要的結果:

pack_struct arr_pack[8]; char *p_tmp = (char*)arr_pack;pack_struct *pack_idx_1 = (pack_struct*) (p_tmp + 5);

示例有點兒繞,我們j是想要通過指針的方式得到數組arr_pack的第一個指針。這里用了硬編碼,寫成了5。這里硬編碼的問題可能是,在其它的平臺上不一定能正確工作!

為了方便移植,應該改寫成:

pack_struct arr_pack[8]; char *p_tmp = (char*)arr_pack; pack_struct *pack_idx_1 = (pack_struct*) (p_tmp + sizeof(pack_struct));

坑5

浮點數的比較。某君寫了如下代碼:

float x = 1.333 - 1; cout << x << endl; if (x == 0.333){cout << "x = " << 0.333 << endl; }else{cout << "x != " << 0.333 << endl;}

請問一下輸出是什么?

不用想,筆者在這里把它們寫出來,肯定是有坑的,所以輸出結果也是“驚世駭俗”的,輸出為:

0.333 x != 0.333

看起來不可思議!!!問題來了,那怎樣才能正確地作浮點數相等判斷呢?也很簡單,一般用偏離一個中心的距離小于某個精度來判斷相等:

if (fabs(f1 - f2) < 預先指定的精度){//...}

實際一般推薦用 1e-5 作為精度(看各項目的精度要求啰)。

坑6:模版的使用

首先來看一下一個正常的模版類使用方法:

`// ### main.cpp ###`#include <iostream>using namespace std; template<class T> void disp(T t);template<class T>void disp(T t){cout << t << endl;}int main(){disp(8); disp<float>(8.8f);return 0; }


這個能正常編譯運行,但是把這些模版細節都放到?main.cpp?中,看得很昏。于是我們想要把他們移出main.cpp。

假如我們有一個頭文件test.h?和一個實現文件?test.cpp。

我們把模版的聲明移到test.h,模版的實現移至main.cpp, 此時三個文件內容分別如下:

// ### test.h ###

template<class T> void disp(T t);// ### test.cpp ###template<class T>void disp(T t){cout << t << endl;}


/ ### main.cpp ###

#include <iostream>using namespace std; int main(){disp(8); disp<float>(8.8f);return 0; }

編譯運行,發現Linker出錯:

error LNK2019: unresolved external symbol "void __cdecl disp<int>(int)" (??$disp@H@@YAXH@Z) referenced in function main error LNK2019: unresolved external symbol "void __cdecl disp<float>(float)" (??$disp@M@@YAXM@Z) referenced in function main fatal error LNK1120: 2 unresolved externals -- FAILED.

錯誤出現了,我們想知道“為什么”?

這是因為目前C++還不支持模版分開編譯。分開會導致模版函數在具化過程中找不到外部符號。通常地做法是把聲明和實現全部放在頭文件中。下面是正確的版本:

// ### test.h ###

template<class T> void disp(T t);template<class T>void disp(T t){cout << t << endl;}

// ### test.cpp ###

// test.cpp file content...

// ### main.cpp ###

#include <iostream>using namespace std; int main(){disp(8); disp<float>(8.8f);return 0; }

這回終于對了!

坑7:棧被意外修改

看下面這段代碼。你覺得Line 28會異常嗎? 實際結果是”會“!

這個就是我在工作中遇到的一個實際問題,當時一直監控一個變量,這個變量總是莫名其妙被更改了, 最后挖出來罪魁禍首就是一個把棧破壞了。結果我的 “N” 成了一個無意義的超大數。

所以一定要嚴格控制好指針的越界行為,編譯器無法知道你的意圖,這個只有靠自己來把控,但也有一些方法來排查和防衛這種問題的發生。這是接下來要講的內容。

內存泄露問題排查

內存泄露問題是大型 C++項目中最棘手的問題之一。有人會想,嘿,反正我內存多,不用擔心用完,讓它去泄露吧, 但我只能告訴你,too young , too simple, sometimes naive。

內存只有有哪怕一個地址的泄露,都可能導致嚴重的宕機事故,特別是在一些重要的嵌入式領域,如醫療,核電,飛行控制器軟件中。

有很多工具可以幫忙排查內存泄露問題。從懷疑內存泄露到證實一般要經過以下的步驟:

懷疑

開機后一切正常,系統運行一段時間后,越來越卡。此時需要排除是不是 CPU 溫度過高,軟件處理數據量是不是變大了。如果都正常,那就著手懷疑是內存泄露問題。

如果在Linux上,可以通過 free -m 命令看到剩余的內存。如果運行長時間后,剩余內存變得越來越小。則大概率是內存泄露。

驗證

下一步可以通過一些工具去協助監控內存的分配和釋放, 如:coverity (力薦,因為是我的前東家新思科技產的,當然也是最好用的,Valgrind(開源,免費)等。

防御式編程理論

講了這么多坑,終于要講一些理論總結了,應該松口氣還是憋口氣呢(笑)?

我們編程最終的目標是讓產品能平穩運行,而且要”不以人的意志為轉移“式地平穩運行。

這其中包括兩點:

  • 產品代碼要邏輯正確、完備;

  • 代碼能夠讓人讀而知其義,能盡量避免他人犯錯;

防御式編程就是在做到 1 后,再把第 2 條做好。

在這里,一定要看清楚,做到1后再做2。 有些軟件管理可能過分強調防御,在功能,邏輯都還沒有完備時,大搞特搞防御,其實并不可取。其實,本人傾向于當功能雛形做好后,再防御。畢竟過早防御會使得代碼過分臃腫。

說了這么久”防御“,讀者可能已經昏了。那到底什么是防御? 別急,讓我們先來看一個例子。

如取上面的例子N, 防御式編程應該是:

FILE *fp = fopen("main.cpp", "rb"); const int MAX_BUF = 8;char *buf = new char[MAX_BUF];int N = 99; int i_to_read = 1024; assert(MAX_BUF - i_to_read > 0); fread(buf, 1, i_to_read, fp);assert(N == 99); fclose(fp); delete[] buf;

assert那一行就是防止別人犯錯,并把錯誤盡早地暴露出來的防御代碼。

防御式編程實踐

其實防御式編程理論遠比這個要深。在實踐中,各聰明的大師們總結了一套規律來嚴防死守內存越界,數組越界,值為負,除數為零, 野指針等。

下面分別說明。

防內存越界。我是懶人,還是取上面的例子:)

assert(MAX_BUF - i_to_read > 0);fread(buf, 1, i_to_read, fp);

防數組越界

如下,假如我們要寫一個函數,返回數組的索引為?idx?的元素值。

int get_arr_by_idx(int *arr, int len, int idx);int get_arr_by_idx(int *arr, int len, int idx) {assert(idx <= len - 1);return arr[idx];}

防值為負

char buf[9] = 0;int sz_to_set = 4;assert(sz_to_set >= 0);memset(buf, 0xAF, sz_to_set);

防被除數為零

double t = 9.9f; for (int i = -2; i < 2; i++) {assert(i != 0);cout << t / i << endl; }

野指針

char *buf = NULL; assert(NULL != buf);printf(buf);

當然,說了這么多的防御技巧,其實最好的防御是命名。(驚訝的表情)。名命得好,可以讓人”望文生義“。筆者就常常用下面這幾個命名:

  • idx?: 表元素索引, 是大于等于 0 的;
  • sz, len?: 表元素長度;
  • p_xx?: 表示 xx 的一個指針;
  • 全大寫:?表示常量;
  • m_xx :?表示成員變量;

當然,關于命名上筆者不是能手,想成為能手,就去讀一些成熟的優秀的開源框架中的命名。 相信我,你會受益良多的。推薦boost, Linux Kernel, Google Protobuf.

上面說了這么多, 如果你有幸從中學到一些,一定要告訴筆者,讓筆者欣慰欣慰。

最后, 謝謝你的閱讀。

林奇思妙想 于 深圳

2017/11/24

總結

以上是生活随笔為你收集整理的C/C++ 踩过的坑和防御式编程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

爱情影院aqdy鲁丝片二区 | 日韩av一卡二卡三卡 | 欧美极品裸体 | 免费福利在线播放 | 久久国产精品视频 | 国内精品久久久久影院优 | 一区二区欧美激情 | 成年人三级网站 | 一区二区中文字幕在线 | 亚洲专区 国产精品 | 91传媒激情理伦片 | 国内精品久久久久久久久久 | 国产综合精品一区二区三区 | 黄色一级影院 | 一级片视频在线 | 丁香激情综合 | 国产色黄网站 | 日韩二区在线观看 | 国产精品麻豆视频 | 日韩小视频 | 国产美女在线观看 | 欧美日韩在线免费观看 | 天海翼一区二区三区免费 | 欧美色综合天天久久综合精品 | 国产粉嫩在线观看 | 午夜视频免费 | 成人作爱视频 | 久久精品电影 | 亚洲精品视频偷拍 | 国产一区二区在线免费视频 | 在线看小早川怜子av | 在线观看91视频 | 96看片 | 成年人视频免费在线 | 亚洲在线日韩 | 91网站免费观看 | 欧美成人黄色 | 综合国产视频 | 日韩精品中文字幕在线观看 | av免费播放| 波多野结衣一区三区 | 久久久一本精品99久久精品 | 国产在线一区二区 | 国产日韩欧美在线看 | 色婷婷亚洲 | 欧美激情在线看 | 视色网站| 中文字字幕在线 | 美女黄频视频大全 | 日韩黄色免费电影 | 在线小视频 | 韩日精品在线观看 | 国产精品久久99精品毛片三a | 久久精品黄 | 91久久久久久久一区二区 | 高清视频一区二区三区 | 天天射天天操天天干 | 天天操天天色天天射 | 园产精品久久久久久久7电影 | www.久久91 | 国产精品毛片一区二区三区 | 国产黄色视| 69国产成人综合久久精品欧美 | 亚洲国产成人在线播放 | 亚洲狠狠丁香婷婷综合久久久 | 99精品偷拍视频一区二区三区 | 久久久久久久av麻豆果冻 | 51久久夜色精品国产麻豆 | 日韩免费一级电影 | 亚洲乱码在线 | 日韩精品在线看 | 日韩精品一区在线播放 | 99久热在线精品视频成人一区 | 国产色综合天天综合网 | 日本女人在线观看 | 国内精品久久久久影院优 | 国产乱对白刺激视频在线观看女王 | 伊人网站 | 婷五月激情| 最近日本中文字幕 | 97在线视频免费看 | 天天av资源| 亚洲激情视频在线观看 | 五月天丁香综合 | www最近高清中文国语在线观看 | 99精品视频免费全部在线 | 懂色av一区二区三区蜜臀 | 狂野欧美激情性xxxx | 日韩中字在线观看 | 免费一级黄色 | 久久久久免费网 | 成人a级网站 | 少妇bbr搡bbb搡bbb | 精品国产一区二区三区免费 | 99色资源| 天天射天天干天天插 | 免费a v在线 | 久久av一区二区三区亚洲 | 国语精品免费视频 | 激情五月看片 | 亚洲三级国产 | 日韩免费看片 | 最近中文字幕完整高清 | 久久精品视频免费 | 在线观看日韩一区 | 亚洲一区二区视频在线播放 | 99精品视频免费看 | 国内久久精品 | 久青草影院| 国产伦理一区二区三区 | 亚洲综合视频在线播放 | 久久久久久久免费看 | 午夜电影av | 日韩精品在线观看av | 6699私人影院| 久久五月天婷婷 | 一本一本久久a久久精品牛牛影视 | 九九国产精品视频 | 国内精品久久久久影院优 | 超碰人人在线 | 日韩在线观看一区二区 | 欧美日韩超碰 | 中文字幕中文字幕在线一区 | 中文字幕免费不卡视频 | 亚洲一二三在线 | 免费成人av | 国产夫妻av在线 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 一区二区三区影院 | 久久免费中文视频 | 日韩精品久久久 | 亚洲精品99久久久久中文字幕 | 亚洲一区尤物 | 亚洲欧美乱综合图片区小说区 | 夜夜天天干 | 欧美激情精品久久 | 欧美成人91 | 国产亚洲午夜高清国产拍精品 | 亚洲天堂在线观看完整版 | 亚洲日本成人 | 99精品视频在线免费观看 | av中文国产 | 99爱国产精品 | 久久久国产精品一区二区中文 | 国产成本人视频在线观看 | 亚洲作爱 | 一区二区三区免费在线观看 | 国产亚洲精品久久久久动 | 国产一区二区免费看 | 日韩av手机在线看 | 久久久久综合网 | 国产精品久久久久久影院 | 亚洲精品系列 | 色综合a| 久久精品视频播放 | 欧美粗又大 | 鲁一鲁影院 | 天天激情天天干 | 看全黄大色黄大片 | 美女国内精品自产拍在线播放 | 国产精品18p | 亚洲国产午夜精品 | 久久久亚洲影院 | 成人黄色在线看 | 日韩精品免费在线观看视频 | 九九热免费在线视频 | 久草在线视频新 | 在线观看亚洲 | 久久久国产成人 | 国产粉嫩在线 | 娇妻呻吟一区二区三区 | www.久久精品视频 | 激情电影在线观看 | 91日本在线播放 | 欧美亚洲另类在线视频 | 国产精品久久久久999 | 亚洲伊人网在线观看 | 狠狠狠操| 99精品亚洲 | www.av小说| 亚洲美女视频在线观看 | 97av.com| 西西444www大胆高清视频 | 最新av在线播放 | 西西444www大胆高清图片 | 久久精彩免费视频 | 99日韩精品 | 国产精品免费视频网站 | 国产伦理久久精品久久久久_ | 国产成免费视频 | 九九免费在线观看 | 国产视频一区二区在线观看 | 免费日韩一区二区 | 亚洲精品黄网站 | 91精品视频导航 | 亚洲乱码精品久久久久 | 天天操天天干天天玩 | 精品国产一区二区三区av性色 | 91亚洲在线观看 | 国产精品123 | 在线视频日韩精品 | 国产一区在线精品 | 亚洲精品久久久久久久不卡四虎 | 国产精品久久 | 黄色a一级片 | 免费电影一区二区三区 | 开心色激情网 | 四虎影视精品成人 | 最新av观看 | 9999免费视频 | 香蕉视频国产在线 | 日韩在线国产精品 | 99久久久久国产精品免费 | 日韩欧美在线一区二区 | 97国产超碰在线 | 国产字幕在线播放 | 在线免费看片 | 男女激情麻豆 | 婷婷日韩 | 国产精品久久一 | 色av资源网| 中文字幕电影在线 | 亚洲一区二区三区四区在线视频 | 婷婷午夜天 | 黄色免费看片网站 | 成人动态视频 | 亚洲精品9 | 麻豆传媒在线免费看 | 免费av在线网站 | 又黄又刺激又爽的视频 | 久久国产精品免费看 | 中文字幕免费 | 激情婷婷综合网 | 日韩三级在线观看 | 人人狠狠综合久久亚洲 | www久久国产| 日韩欧美视频免费在线观看 | 国产精品三级视频 | 久久精品国产精品亚洲精品 | 96精品在线 | 色狠狠一区二区 | 探花视频免费在线观看 | 视频在线播放国产 | 一级黄视频 | 久久9精品| 看v片| 欧美日本不卡视频 | 奇人奇案qvod | 亚洲久草视频 | 国产精品一区二区久久精品 | 国产一区二区三区黄 | 日韩毛片精品 | 日韩欧美一级二级 | av电影av在线 | 久久久免费在线观看 | 人人干人人艹 | 久久久久久久久久影院 | 亚洲精品玖玖玖av在线看 | av三级在线播放 | 天天干天天操天天干 | 在线免费观看视频你懂的 | 国产精品久久在线观看 | 69久久99精品久久久久婷婷 | 国产成人精品亚洲日本在线观看 | 精品欧美一区二区精品久久 | 探花视频网站 | 毛片永久新网址首页 | 久久伊人精品一区二区三区 | 黄色日批网站 | 久久九精品 | 久久久视频在线 | 国内精品久久久久久久97牛牛 | 婷婷国产在线 | 国产精品美女www爽爽爽视频 | 国产成人av在线影院 | 超级碰碰碰视频 | 人人干狠狠干 | 国产精品 久久 | 狠狠久久伊人 | 婷婷中文字幕在线观看 | 久久国产精品一二三区 | 中文字幕一区在线观看视频 | 日韩成人高清在线 | 久久精品老司机 | 91丨九色丨蝌蚪丨对白 | 欧美在线观看视频免费 | 欧美精品久久久久久久久免 | 四虎影视国产精品免费久久 | 麻豆精品传媒视频 | 激情偷乱人伦小说视频在线观看 | 中文字幕亚洲综合久久五月天色无吗'' | 91色亚洲 | 伊人国产女| 国产精品精品久久久久久 | 久久精品国产一区二区电影 | 中文字幕免费一区二区 | 在线观看视频中文字幕 | 97超碰人人模人人人爽人人爱 | 深夜国产福利 | 天天综合天天做天天综合 | 在线涩涩 | 高清av免费一区中文字幕 | 超碰97免费 | 五月激情av | 久久综合狠狠综合 | 中文字幕中文字幕在线中文字幕三区 | 国产精品美女久久久免费 | 欧美ⅹxxxxxx | 成人av在线影视 | 日韩精品一区在线播放 | 97精品超碰一区二区三区 | 狠狠狠狠狠狠 | 国产69久久精品成人看 | 天天爱综合 | 国精产品999国精产品视频 | 四虎免费av | 99久久国产免费,99久久国产免费大片 | 中文字幕在线免费97 | 在线观看国产日韩欧美 | 亚洲三级在线免费观看 | 日日夜夜天天人人 | 九九视频免费观看视频精品 | 精品国产观看 | 五月天综合网 | 一区二区电影网 | 四虎成人在线 | 免费黄色在线播放 | 欧美成人免费在线 | 国产视频一区在线 | 精品久久久久亚洲 | 一区二区三区精品在线视频 | 国产精品一区二区三区免费看 | 中文字幕有码在线播放 | 国产一区免费观看 | 免费观看十分钟 | 日韩免费在线 | 日韩av影片在线观看 | 成人免费中文字幕 | 婷婷丁香av | 成人一区二区三区在线 | 久久伊人操 | 不卡的av电影 | 91香蕉国产| 嫩草av在线 | 免费国产在线观看 | 国产免费美女 | 特级毛片在线观看 | 久久99九九99精品 | 国产视频 亚洲视频 | 午夜手机电影 | 亚洲第一区在线观看 | 亚洲九九爱 | 人人看看人人 | 婷婷综合av | 日韩黄色一区 | 国产尤物视频在线 | 美女精品国产 | 欧美日韩一级视频 | 天天色天天射综合网 | 免费看特级毛片 | 国产精品色婷婷 | 国产亚洲观看 | 日韩精品免费一区二区 | 五月综合激情婷婷 | 日本黄色大片免费看 | www色婷婷com| 99久热在线精品 | a国产精品 | 国产欧美在线一区二区三区 | 东方av在| 亚洲精品久久久久久久不卡四虎 | 亚洲va天堂va欧美ⅴa在线 | 五月婷婷丁香 | 日本中文字幕在线免费观看 | 免费在线观看av电影 | 久久公开免费视频 | 99久久999久久久精玫瑰 | 在线免费观看涩涩 | 91丨九色丨国产女 | 国产精品免费久久久久久久久久中文 | 日本在线中文 | 免费亚洲精品 | 国产美女精品视频免费观看 | 国产伦理一区二区三区 | 日韩在线观看视频一区二区三区 | 99热这里精品 | 天天夜操 | 99热精品国产一区二区在线观看 | 久久精品一区 | 波多野结衣在线中文字幕 | 四虎成人精品在永久免费 | 欧美做受高潮电影o | 久久99热国产 | 玖玖精品在线 | 91丝袜美腿| 综合久久婷婷 | 欧美激情精品久久久久 | 国产999精品久久久影片官网 | 国产91精品一区二区 | 国产精品国产三级在线专区 | 日韩91av| 亚洲成人午夜在线 | av电影在线观看完整版一区二区 | 国产美女精品在线 | 成年人免费看的视频 | 免费国产在线观看 | 欧美男同视频网站 | 免费又黄又爽视频 | 青草视频在线看 | www178ccom视频在线 | 国产精品av久久久久久无 | 国产精品av免费 | 久久精品高清视频 | 四虎永久免费在线观看 | 日日爱av | 白丝av在线 | 久久福利国产 | 国内精品视频久久 | 色射色| 伊人永久 | 黄色影院在线免费观看 | 久久综合久久综合这里只有精品 | 91探花国产综合在线精品 | 天天五月天色 | 91九色网站 | 久久www免费人成看片高清 | 成人在线观看你懂的 | 成年人网站免费观看 | 中文字幕在线观看第三页 | 国产精品乱码一区二区视频 | 国产伦理久久精品久久久久_ | 中文字幕中文字幕在线一区 | 天天天天天天天天操 | 久久国产日韩 | 欧美精品在线免费 | 精品一区二区6 | 成人av播放| 探花视频免费在线观看 | 99久e精品热线免费 99国产精品久久久久久久久久 | 国产午夜精品av一区二区 | 狠狠综合网 | 99久久精品久久久久久清纯 | 超碰在线色| 国产色网站 | 日韩精品黄 | 久久这里 | 国内视频在线 | 在线观看日本高清mv视频 | 亚洲一区二区三区四区在线视频 | 97综合视频 | 欧美另类69 | 99久久婷婷国产一区二区三区 | 国产在线一卡 | 91av电影网| 97夜夜澡人人双人人人喊 | 久久福利国产 | 偷拍久久久 | 久久看视频 | 激情综合网五月 | 国产精品24小时在线观看 | 99热超碰在线 | 国产成人精品国内自产拍免费看 | 日本中出在线观看 | 91av视频在线观看 | 91一区二区三区久久久久国产乱 | 天天激情站 | 激情小说久久 | 婷婷丁香国产 | 日韩夜夜爽| 亚洲精品视频在线播放 | 狠狠色综合网站久久久久久久 | 99久久超碰中文字幕伊人 | 亚洲成人av片在线观看 | 久久九九久久精品 | 天天草天天干天天 | 天天干夜夜想 | 久久久免费 | 欧美怡红院 | 国产一区91 | 日日夜夜天天干 | 国产精品电影在线 | 日韩av免费一区 | 国产精品99久久免费黑人 | 国产视频1区2区 | 欧美夫妻生活视频 | 国产情侣一区 | 色综合天天综合网国产成人网 | 在线网站黄 | 香蕉视频免费在线播放 | 中文字幕在线播放一区 | 爱爱av在线 | 麻豆国产网站 | 久草在线手机视频 | 男女拍拍免费视频 | 欧美日韩三级在线观看 | 91在线视频观看免费 | 欧美一级淫片videoshd | 91人人爽人人爽人人精88v | 美女黄濒 | 国产一级二级av | 成人av一区二区兰花在线播放 | 亚洲视频大全 | 国产麻豆果冻传媒在线观看 | 免费视频久久久久久久 | 国产 视频 高清 免费 | 日本动漫做毛片一区二区 | 久久久久久久久久久精 | 色偷偷网站视频 | 国产精品一区二区久久精品 | japanesexxxhd奶水| 久草久热 | 国产亚洲一区二区在线观看 | 狠狠色丁香 | 亚洲视频一区二区三区在线观看 | 91精品久久久久久综合五月天 | 亚洲午夜久久久久久久久电影网 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 97视频在线观看成人 | 香蕉视频一级 | 久久久麻豆精品一区二区 | 亚洲成人黄 | 中文在线字幕免 | 欧美激情视频在线免费观看 | 日本精品一区二区三区在线观看 | 久久久国产在线视频 | 99国产精品一区 | 久草国产精品 | 91精品婷婷国产综合久久蝌蚪 | 999日韩| 人人舔人人舔 | 久久久久久免费视频 | 91亚洲在线| 在线中文视频 | 日本论理电影 | 国产成人一区二区在线观看 | 久久国产精品色婷婷 | 丁香花中文字幕 | 亚洲 欧美 91 | 久久久国产影视 | 国产精品系列在线播放 | 成年在线观看 | 深夜免费小视频 | 国产精品久久久久久999 | 色婷婷综合在线 | 午夜999| 国产正在播放 | 国产精品午夜久久久久久99热 | 国内精品久久久久影院日本资源 | 国产日韩欧美在线观看视频 | 日日干日日| 天天搞天天 | 一区 二区 精品 | 日韩激情网 | 青青草国产精品视频 | 日日干 天天干 | 久久久久 免费视频 | 天天干,狠狠干 | 日韩在线免费观看视频 | 色婷婷www| 欧美日韩亚洲在线 | 国产精品你懂的在线观看 | 亚洲国产日韩一区 | 婷婷国产视频 | 91亚洲精品乱码久久久久久蜜桃 | 深爱激情五月婷婷 | 精品国产乱码久久久久久1区二区 | 免费av一级电影 | 97久久精品午夜一区二区 | 久久99久久99久久 | 日韩高清在线看 | 国产原创91 | 91爱爱中文字幕 | 超碰在线日本 | 国产精品一区二区三区四 | 天天爱天天操天天爽 | 精品在线免费视频 | 日日操天天操狠狠操 | 91人人爽人人爽人人精88v | 久久人人爽视频 | 欧美成人在线网站 | 免费亚洲一区二区 | 久久男人中文字幕资源站 | 免费观看丰满少妇做爰 | 男女激情网址 | 五月婷婷综合网 | 午夜视频亚洲 | 国产精品一区二区美女视频免费看 | 91九色九色| 在线视频婷婷 | 亚洲精品福利在线 | wwwww.国产| 奇米网777 | 午夜精品久久久久久久久久久久久久 | 在线观看一级视频 | 亚洲精品美女久久久久网站 | 国产一区免费 | 国产精品久久久区三区天天噜 | 99亚洲国产 | 五月综合激情网 | 欧美久久精品 | 免费精品 | 久草精品电影 | 国产私拍在线 | 狠狠色丁香婷婷综合久久片 | 日日日爽爽爽 | 久草视频免费观 | 久草久草在线 | 亚洲激情一区二区三区 | 日韩在观看线 | 欧美日韩在线视频观看 | 午夜丁香视频在线观看 | 亚洲天堂视频在线 | 色网站在线免费观看 | 91av色| 国产精品亚洲片在线播放 | 五月婷婷综合在线视频 | 久久久免费电影 | 国产成人精品久 | 91麻豆精品国产91久久久使用方法 | 国产亚洲人成网站在线观看 | 97精品国产97久久久久久免费 | 国产精品国产三级国产不产一地 | 成人国产精品电影 | 国产成人精品久久亚洲高清不卡 | 天天爽人人爽 | 国产高清在线免费视频 | 国产精品视频你懂的 | 日韩精品影视 | 91成人免费看片 | 91欧美视频网站 | 日韩有码专区 | 久久午夜精品影院一区 | 中文字幕电影高清在线观看 | 国产传媒中文字幕 | 色婷婷狠狠| 中文国产字幕在线观看 | 久久这里只有精品视频首页 | 亚洲另类人人澡 | 国产精品午夜av | 亚洲黄色精品 | 日韩艹 | 97国产小视频 | 国产手机视频在线播放 | 成年人在线免费视频观看 | 91在线免费播放 | 欧美一区二区三区四区夜夜大片 | 91网站在线视频 | 99精品热| 国产精品四虎 | 久久久精品电影 | 欧美一二三专区 | 亚洲精品在线播放视频 | 国产精品视频大全 | 日韩免费在线 | 18女毛片| 午夜99| 美女视频黄免费 | 亚洲91精品 | 麻豆94tv免费版 | 91欧美在线| 亚洲成人黄色av | 亚洲色视频 | 久久香蕉电影网 | 中文字幕av免费在线观看 | 99久久精品免费看 | 欧美成人影音 | 久草网在线视频 | 国产一区二区三区在线免费观看 | 麻豆你懂的 | 一区二区三区在线观看中文字幕 | 免费久久精品视频 | 国产主播大尺度精品福利免费 | 亚洲午夜小视频 | 日韩美女久久 | 精品亚洲在线 | 91成人久久 | 91香蕉视频黄色 | 久草在线视频看看 | 五月婷婷视频 | 亚洲欧洲日韩在线观看 | 81精品国产乱码久久久久久 | 亚洲日本中文字幕在线观看 | 国产色秀视频 | 色偷偷av男人天堂 | 蜜臀av在线一区二区三区 | 婷婷日| 2019av在线视频 | 最新中文字幕视频 | 日本成人中文字幕在线观看 | 草久中文字幕 | 日韩免费视频一区二区 | 骄小bbw搡bbbb揉bbbb | 在线有码中文 | 91精品一区二区在线观看 | 天天干夜夜擦 | 久久99久久99免费视频 | 久久99国产精品二区护士 | 大胆欧美gogo免费视频一二区 | 欧美 国产 视频 | 五月天婷亚洲天综合网精品偷 | 精品中文字幕视频 | av一级免费 | 免费看黄在线 | 久久久久久久久久久影院 | 亚洲精品视频在线观看免费视频 | 亚洲日本精品视频 | 日本中文字幕电影在线免费观看 | 视频国产在线 | 天天干天天操天天爱 | 日韩aⅴ视频 | 激情五月在线视频 | 日本在线观看中文字幕无线观看 | 日韩av视屏在线观看 | 国产精品黄网站在线观看 | 最近中文国产在线视频 | 国产黄在线 | 中文国产字幕在线观看 | 成人cosplay福利网站 | 国内丰满少妇猛烈精品播 | 91丨九色丨国产在线 | 久久久网址 | 日韩av看片 | 国产精品密入口果冻 | 在线国产中文字幕 | 国产电影一区二区三区四区 | 99在线精品视频 | 国产无遮挡又黄又爽在线观看 | 国内精品久久久久久久97牛牛 | 欧美天堂久久 | 九色自拍视频 | 91传媒视频在线观看 | 亚洲精品午夜久久久久久久久久久 | 97精品久久 | 国产精品资源 | 日本中文在线 | www在线观看视频 | 手机看片中文字幕 | 97人人模人人爽人人少妇 | 亚洲欧美日韩不卡 | 丁香婷婷在线观看 | 成人作爱视频 | 亚洲国产精品女人久久久 | 国产理论影院 | 最近中文字幕高清字幕免费mv | 六月色丁香| 久久国产精品99久久久久久丝袜 | 免费看污网站 | 园产精品久久久久久久7电影 | 一本一道波多野毛片中文在线 | 国产精品永久 | 中文字幕有码在线 | 麻豆国产在线播放 | avove黑丝 | 黄色软件网站在线观看 | 日韩免费网站 | 精品网站999www | 天天综合五月天 | 欧美精品中文在线免费观看 | 日韩精品一区二区三区在线视频 | 亚洲天堂网视频 | 在线观看国产日韩欧美 | 国产一区二区在线精品 | 99精品国产免费久久久久久下载 | 在线不卡中文字幕播放 | 高清色免费 | 一级理论片在线观看 | 99精品视频在线 | 欧美日韩另类视频 | 久久精品香蕉 | 四虎国产精品免费观看视频优播 | 色综合亚洲精品激情狠狠 | 日韩免费电影网 | 午夜美女福利直播 | 天天干天天射天天操 | 在线视频观看你懂的 | 91新人在线观看 | 最新中文字幕在线观看视频 | 成年人在线观看免费视频 | 天天插视频| 日本中文字幕系列 | 色妞色视频一区二区三区四区 | 欧美综合干 | 国语精品久久 | 中文字幕亚洲情99在线 | 日本黄色大片免费 | 国产精品久久久区三区天天噜 | 一区二区视频在线播放 | 久久久这里有精品 | 99视频偷窥在线精品国自产拍 | 国产一在线精品一区在线观看 | 亚洲一片黄 | 国产亚洲欧美日韩高清 | 亚洲精品国产拍在线 | 视频一区视频二区在线观看 | 国产男女无遮挡猛进猛出在线观看 | 伊人热 | 日韩av中文在线观看 | 91精品人成在线观看 | 色综合久久88色综合天天人守婷 | 欧美日韩免费在线观看视频 | 黄色片亚洲 | 亚洲最新在线视频 | 成人久久视频 | 日韩在线视频观看免费 | 永久免费毛片 | 国产午夜精品一区二区三区 | 91av国产视频| 国内小视频 | 97精品视频在线 | 久爱精品在线 | 99视频精品全部免费 在线 | 精品一区精品二区高清 | 国产一级黄色av | 亚洲欧美婷婷六月色综合 | 99成人精品 | 国产69精品久久99的直播节目 | 91日韩精品一区 | 91xav| 欧美一级乱黄 | 久久久资源网 | 久久av免费| 日本中文字幕在线一区 | 色综合久久综合中文综合网 | 麻豆视频在线播放 | 日本三级大片 | 国内视频1区 | 96久久欧美麻豆网站 | 五月激情久久久 | 激情欧美一区二区三区免费看 | 亚洲久草视频 | 国产精品99久久久久久武松影视 | 色av男人的天堂免费在线 | 亚洲最大成人免费网站 | 激情视频综合网 | 国产精品久久久久久久久久三级 | 久久精品亚洲一区二区三区观看模式 | 日韩精品在线视频 | 狠狠色香婷婷久久亚洲精品 | 亚洲综合色激情五月 | 婷婷五综合 | 中文字幕乱码视频 | 日韩欧美网址 | 欧美高清成人 | 久久视频这里有久久精品视频11 | 97在线观 | 色综合天天在线 | 日韩免费一级电影 | 探花视频在线观看免费版 | 久久精品一区二区国产 | 欧美色噜噜噜 | 51久久成人国产精品麻豆 | 91精品对白一区国产伦 | 在线观看免费国产小视频 | 亚洲综合情 | 日韩精品一区二区三区免费观看视频 | 国产99久久久久久免费看 | 婷婷激情站 | 亚洲午夜久久久久久久久久久 | 色婷婷综合五月 | 91精品国产一区二区三区 | 一级免费看视频 | 中日韩欧美精彩视频 | 亚洲欧美日本一区二区三区 | 热久久精品在线 | 不卡的一区二区三区 | 欧美激情综合五月色丁香 | 久久综合操| 国内久久久久久 | 国产午夜亚洲精品 | 国产精品资源在线 | 五月婷婷婷婷婷 | 久久精品一区二区国产 | 国产亚洲成人精品 | 三级黄色三级 | 亚洲另类人人澡 | 国产在线精品一区二区 | 97超碰在线播放 | 日批在线观看 | 日日爱视频 | 看av免费 | 日韩av区| 欧美二区在线播放 | 国产 在线 日韩 | 国产午夜影院 | 99精品国产福利在线观看免费 | 二区中文字幕 | 精品超碰 | 婷婷在线网 | 天天色天天干天天 | 国产专区视频 | 国产色视频123区 | av在线a | 免费高清在线观看成人 | 日本美女xx | 久久国产精品99精国产 | 欧美日韩视频精品 | 亚洲国产中文字幕 | 92中文资源在线 | 97色在线观看免费视频 | 亚洲国产免费网站 | 日韩影视在线 | 日免费视频 | 美女精品在线观看 | 狠狠色丁香 | 97色se | 欧美日韩在线精品一区二区 | 天天综合成人网 | 国产a级片免费观看 | 免费高清在线一区 | 免费黄色av电影 | 欧美激情视频在线免费观看 | 国产精品视频999 | 日韩亚洲国产精品 | 久久,天天综合 | 日韩精品一区二区电影 | 欧美色图亚洲图片 | 中文字幕日韩伦理 | 日韩视频在线不卡 | 免费观看黄色12片一级视频 | 天天操操操操操 | 天天干天天插伊人网 | 亚洲国产精品小视频 | 日韩最新av| 久久国产热 | 日日摸日日添日日躁av | 国产视频黄 | 亚洲黄色精品 | 天堂入口网站 | 四虎国产 | 国产不卡在线 | 91av在线视频播放 | 国产91精品在线播放 | 日日操天天爽 | 欧美日韩一区二区三区视频 | 国产玖玖视频 | 91天堂影院 | 欧美午夜寂寞影院 | 日韩电影在线观看一区二区三区 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 亚洲精品欧美成人 | 天堂视频一区 | 国产玖玖精品视频 | 国产精品一区二区白浆 | 91麻豆文化传媒在线观看 | 国产中年夫妇高潮精品视频 | 91成人在线观看喷潮 | 午夜国产福利视频 | 国产精品一区二区在线播放 | 午夜精品一区二区三区免费 | 免费看一及片 | 97日日| 日本激情视频中文字幕 | 制服丝袜一区二区 | 久久国产欧美日韩精品 | 色噜噜狠狠狠狠色综合 | 欧美日韩精品区 | 国产美女精品久久久 | 二区三区在线视频 | 最新精品国产 | 亚洲国产wwwccc36天堂 | 97色在线观看 | 欧美a级在线免费观看 | 午夜av免费在线观看 | 97色国产 | 色综合久久88色综合天天6 | 久久精品激情 | 亚洲a成人v | www免费 | 99视频在线观看免费 | 色永久免费视频 | 91av蜜桃 | 韩国在线视频一区 | 国产精品毛片一区二区三区 | 亚洲精品乱码久久久久久 | 18av在线视频 | 夜夜高潮夜夜爽国产伦精品 | 国产精品成久久久久 | 日韩精品一区二区三区水蜜桃 | 免费成人av在线 | 久久人人爽视频 | 日韩a在线| 国产成人a亚洲精品v | 国产精品系列在线观看 | av三级在线免费观看 | 久久国产91| 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 亚洲aⅴ在线 | 国产 av 日韩| 五月婷婷综合激情网 | 国产精品久久久久亚洲影视 | 久久免费成人 | 精品国偷自产国产一区 | 97精品国产一二三产区 | 三级av在线免费观看 | 91久久国产综合精品女同国语 | 久久久精品免费观看 | 一级a性色生活片久久毛片波多野 | 最近高清中文在线字幕在线观看 |