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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

函数 —— strncpy() (内存重叠) memcpy() memmove() 一个字符串拷贝给另一个字符串

發布時間:2025/10/17 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 函数 —— strncpy() (内存重叠) memcpy() memmove() 一个字符串拷贝给另一个字符串 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
char *strncpy(char *dest, const char *src, size_t n) *strncpy(char *dest, const char *src, size_t n)

/*功能:
?* C 庫函數 char *strncpy(char *dest, const char *src, size_t n) 把 src 所指向的字符串復制到 dest,最多復制 n 個字符。當 src 的長度小>于 n 時,dest 的剩余部分將用空字節填充。*/
/*參數:
?* dest -- 指向用于存儲復制內容的目標數組。
?* src -- 要復制的字符串。
?* n -- 要從源中復制的字符數。*/
/*返回值:

?* 該函數返回最終復制的字符串。*/

說明:如果src的前n個字節不含NULL字符,則結果不會以NULL字符結束。如果src的長度小于n個字節,則以NULL填充dest直到復制完n個字節。src和dest所指內存區域不可以重疊且dest必須有足夠的空間來容納src的字符串。返回指向dest的指針。

不考慮內存重疊

int main(void) {char src[40];char dst[12];char dst_less[25];strcpy(src,"This is runoob.com");printf("strlen(src) = %d\n",strlen(src)); //strlen(src) = 18

?

誤解一:如果src 長度大于等于 n, 那么 strncpy 會拷貝 n – 1 各字符到 dest, 然后補 0?

錯,大錯特錯,罰抄上面的 DESCRIPTION ,直到看到:

if there is no null byte among the first n bytes of src, the result will not be null-terminated.

這就可能導致了不安全的因素。

如果待拷貝字符串長度大于了 n, 那么 dest 是不會有結尾字符 0 的。假設這樣一種情況:

1

2

3

char s[] =?"hello world";

strncpy(s,?"shit!", 5);

puts(s);

輸出的結果是 “shit” 還是 “shit! world” ?

這種情況只是導致了輸出結果錯誤,嚴重的,如果 dest n 字節后面一直沒有 0,那么就會導致程序段錯誤。

strncpy 最開始引入標準庫是用來處理結構體中固定長度的字符串,比如路徑名,而這些字符串的用法不同于 C 中帶結尾字 0 的字符串。所以 strncpy 的初衷并不是一個安全的 strcpy.

//src 的長度 大于 或者 等于 len的長度(18>10)//把src所指向的字符串復制到dest,最多賦值10個,注意它的結果不會以NUL字節結尾(NUL即'\0')memset(dst,'\0',sizeof(dst));strncpy(dst,src,10);printf("最終的目標字符串是:%s\n",dst);//最終的目標字符串是:This is ru

誤解二:如果 src 長度小于 n, 那么strncpy 和 strcpy 效果一樣?

錯,事實上,strncpy 還會把 dest 剩下的部分全部置為 0!

//src的長度 小于 len的長度(18<20)//dest_less數組 的剩余部分將用空字節填充 到len的長度。printf("sizeof(dst_less)=%d\n",sizeof(dst_less)); //sizeof(dst_less)=25memset(dst_less,'\0',sizeof(dst_less));strncpy(dst_less,src,20);printf("最終的目標字符串是: %s\n",dst_less);//最終的目標字符串是: This is runoob.com

一直認為 strncpy 只是比 strcpy 多了長度校驗,確不知道 strncpy 會把剩下的部分全置為 0(粗體部分)。

char *strncpy(char *dest, const char *src, size_t n);

DESCRIPTION
The strcpy() function copies the string pointed to by src (including the terminating `\0′ character) to the array pointed to by dest. The strings may
not overlap, and the destination string dest must be large enough to receive the copy.
The strncpy() function is similar, except that not more than n bytes of src are copied. Thus, if there is no null byte among the first n bytes of src,
the result will not be null-terminated.
In the case where the length of src is less than that of n, the remainder of dest will be padded with null bytes.

這會導致什么后果呢?

首先,如果 strncpy 的長度填錯了,比如比實際的長,那么就可能會把其他數據清 0 了。我就遇到過這個問題,在后來檢查代碼看到這個問題時,也并不以為然,因為拷貝的字符串不可能超過緩沖區的長度。

另外,假設 dest 的長度為 1024, 而待拷貝的字符串長度只有 24,strncpy 會把余下的 1000 各字節全部置為 0. 這就可能會導致性能問題,這也是我

?

網上很多博客也寫了這個函數,面試也常常會遇到,但是,我發現網上的很多代碼都是有問題的,我們先看下大部分網上博客的實現:

[plain]?view plain?copy

  • char?*strncpy(char?*dst,?const?char?*src,?size_t?len)??
  • {??
  • ????assert(dst?!=?NULL?&&?src?!=?NULL);??
  • ????char?*res?=?dst;??
  • ????while?(len--)??
  • ????{??
  • ????????*dst++?=?*src++;??
  • ????}??
  • ????return?res;??
  • }??

  • 看著好像沒啥問題,但是,當src的長度小于len呢?這份代碼沒有處理這個問題。當src的長度小于len時,應該如何處理?《C和指針》p179給出的答案是:

    和strcpy一樣,strncpy把源字符串的字符復制到目標數組。然而,它總是正好向dst寫入len個字符。如果strlen(src)的值小于len,dst數組就用

    額外的NUL字節填充到len長度,如果strlen(src)的值大于或等于len,那么只有len個字符被復制到dst中。”

    注意!它的結果將不會以NUL字節結尾。(NUL即‘\0’).

    ?

    由此可見,我們還需要判斷strlen(src)是否小于len,如果是,還需要在dst后面添加NUL,因此,正確的代碼應該如下:

    [plain]?view plain?copy

  • char?*strncpy(char?*dest,?const?char?*src,?size_t?len)??
  • {??
  • ????assert(dest?!=?NULL?&&?src?!=?NULL);??
  • ????char?*res?=?dest;??
  • ????int?offset?=?0;??
  • ????if?(strlen(src)?<?len)//src長度小于len??
  • ????{??
  • ????????offset?=?len?-?strlen(src);??
  • ????????len?=?strlen(src);??
  • ????}??
  • ??
  • ????while?(len--)??
  • ????{??
  • ????????*dest++?=?*src++;??
  • ????}??
  • ????while?(offset--)??
  • ????{??
  • ????????*dest++?=?'\0';??
  • ????}??
  • ????return?res;??
  • }??
  • ?

    ?

    使用這個函數,尤其需要注意,不要出現len>strlen(dst)的情況,如果len>strlen(dst),那么會破壞dst后面的內存:

    我們假設前面紅色部分是dst,然后strncpy(dst,src,10);那么后面黃色部分的內存就被破壞了。strncpy是不負責檢測len是否大于dst長度的。

    ?

    總的來說,strncpy總是復制len個字符到dst指向的內存!!!

    ?

    所以,還會出現下面的情況:

    ?

    [plain]?view plain?copy

  • char?message[]?=?"abcd";??
  • strncpy(message,?"abcde",5);??
  • cout?<<?message;??
  • 輸出是abcde燙燙燙燙燙燙燙燙燙燙燙燙燙燙 ?(結果不唯一)


    message的內存是有5個字節的,但是將abcde拷貝過去時,最后面的‘\0’被覆蓋了,strncpy并不會負責添加‘\0’到dst結尾,因此,輸出該字符串是,會在e字符后面一直找到‘\0’才結束,因此就會出現亂碼。

    考慮內存重疊

    char message[] = "qwertyu";printf("sizeof(message)=%d\n",sizeof(message)); //sizeof(message)=8strncpy(message,"abc",3);printf("message=%s\n",message); //message=abcrtyuchar *p = NULL;p=(char*)malloc(100);memcpy(p,"123456789",strlen("123456789")); //會等到錯誤的結果,有一個長度參數,只能拷>貝cnt個字節就結束了printf("before p =%s\n",p); //before p =123456789strcpy(p+1,p); //注意:這里重疊了,而strcpy是根據判斷原串中的'\0'printf("after p =%s\n",p);//after p =1123456789free(p);return(0); }

    面試中經常會遇到讓你寫一個能夠處理內存重疊的strncpy,標準庫中的strncpy是不考慮內存重疊的,如果出現內存重疊,結果將是未定義的。

    網上的很多博客也有這個代碼的實現,其實很多也是有問題的,沒有考慮src長度小于len的問題:

    [plain]?view plain?copy

  • char?*strncpy(char?*dst,?const?char?*src,?size_t?len)??
  • {??
  • ????assert(dst?!=?NULL?&&?src?!=?NULL);??
  • ????char?*res?=?dst;??
  • ????if?(dst?>=?src?&&?dst?<=?src?+?len?-?1)//重疊,從后向前復制??
  • ????{??
  • ????????dst?=?dst?+?len?-?1;??
  • ????????src?=?src?+?len?-?1;??
  • ????????while?(len--)??
  • ????????????*dst--?=?*src--;??
  • ????}??
  • ????else??
  • ????{??
  • ????????while?(len--)??
  • ????????????*dst++?=?*src++;??
  • ????}??
  • ????return?res;??
  • }??
  • ?

    那么,如果要處理內存重疊,該怎么辦?如果內存重疊和src的長度小于len這兩種情況同時出現,又如何處理?

    ?

    見圖,假設紅色部分為src,黃色為dst。如果出現內存重疊,我們很容易想到:從后往前拷貝。如果src的長度小于len,則在后面補NUL。

    ?

    [plain]?view plain?copy

  • char?*strncpy(char?*dst,?const?char?*src,?size_t?len)??
  • {??
  • ????assert(dst?!=?NULL?&&?src?!=?NULL);??
  • ????char?*res?=?dst;??
  • ????int?offset?=?0;??
  • ????char?*tmp;??
  • ????if?(strlen(src)?<?len)//src長度小于len??
  • ????{??
  • ????????offset?=?len?-?strlen(src);??
  • ????????len?=?strlen(src);??
  • ????}??
  • ??
  • ????if?(dst?>=?src?&&?dst?<=?src?+?len?-?1)//重疊,從后向前復制??
  • ????{??
  • ????????dst?=?dst?+?len?-?1;??
  • ????????src?=?src?+?len?-?1;??
  • ????????tmp?=?dst;??
  • ????????while?(len--)??
  • ????????????*dst--?=?*src--;??
  • ????}??
  • ????else??
  • ????{??
  • ????????while?(len--)??
  • ????????????*dst++?=?*src++;??
  • ????????tmp?=?dst;??
  • ????}??
  • ????while?(offset--)??
  • ????{??
  • ????????*tmp++?=?'\0';??
  • ????}??
  • ????return?res;??
  • }??

  • 那么,如果len的值大于dst的值,就會破壞dst后面的內存空間,這應該是要避免的。

    ?

    最后,我們看一個有意思的東西:(此處strncpy是考慮內存重疊的版本)

    message的長度增加了0.0 ?當然 ?,它后面的內存被破壞了,這可能帶來嚴重的后果。

    ?

    ?

    最后,使用strncpy時,最好自動添加‘\0’在結尾:

    [plain]?view plain?copy

  • char?buffer[BSIZE];??
  • .??
  • .??
  • strncpy(buffer,name,BSIZE);??
  • buffer[BSIZE-1]='\0';?
  • 解決問題:

    int main(void) {char string[8] = {'\0'};char *str1 = "abcde";int i =0;strncpy(string, str1, 3);string[3] = '\0';for(i=0;i<sizeof(string);i++){printf("sting[%d] = %c\n",i,string[i]);}printf("%s\n", string);return 0; }

    內存重疊:拷貝的目的地址在源地址范圍內。所謂內存重疊就是拷貝的目的地址和源地址有重疊。

    ?

    在函數strcpy和函數memcpy都沒有對內存重疊做處理的,使用這兩個函數的時候只有程序員自己保證源地址和目標地址不重疊,或者使用memmove函數進行內存拷貝。

    memmove函數對內存重疊做了處理。

    memmove用于從src拷貝count個字節到dest,如果目標區域和源區域有重疊的話,memmove能夠保證源串在被覆蓋之前將重疊區域的字節拷貝到目標區域中。但復制后src內容會被更改。但是當目標區域與源區域沒有重疊則和memcpy函數功能相同。

    #include <string.h> #include <stdio.h> int main() {char s[] = "Golden Global View";memmove(s,s+7,strlen(s)+1-7);printf("%s\n",s); //Global Viewreturn 0; }

    函數原型:

    1

    2

    void?*memcpy(?void?*dest,?const?void?*src, size_t count );

    void?*memmove(?void* dest,?const?void* src, size_t count );

    ?1.memcpy和memmove相同點
    都是用于從src拷貝count個字節到dest。

    2.memcpy和memmove區別
    如果目標區域和源區域有重疊的話:
    memcpy不能夠確保源串所在重疊區域在拷貝之前被覆蓋。
    memmove能夠保證源串在被覆蓋之前將重疊區域的字節拷貝到目標區域中,復制后src內容會被更改,當目標區域與源區域沒有重疊則和memcpy函數功能相同。

    但當源內存和目標內存存在重疊時,memcpy會出現錯誤,而memmove能正確地實施拷貝,但這也增加了一點點開銷。


    memmove的處理措施:
    (1)當源內存的首地址等于目標內存的首地址時,不進行任何拷貝
    (2)當源內存的首地址大于目標內存的首地址時,實行正向拷貝
    (3)當源內存的首地址小于目標內存的首地址時,實行反向拷貝

    3.Linux下的實現過程
    linux下,兩個函數都在頭文件string.h中定義,函數原型為:

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    33

    34

    35

    36

    37

    38

    39

    40

    41

    42

    void?* __cdecl memcpy (?void?* dst,const?void?* src,size_t count);

    void?* __cdecl memmove (?void?* dst,const?void?* src,size_t count);

    ?

    //實現代碼如下:

    ?

    void?* __cdecl memcpy (?void?* dst,const?void?* src,size_t count){

    ?????????void?* ret = dst;

    ?

    ?????????while?(count--) {

    ????????// 注意, memcpy函數沒有處理dst和src區域是否重疊的問題

    ???????????????????*(char?*)dst = *(char?*)src;

    ???????????????????dst = (char?*)dst + 1;

    ???????????????????src = (char?*)src + 1;

    ?????????}

    ?

    ?????????return(ret);

    }

    ??

    void?* __cdecl memmove (?void?* dst,const?void?* src,size_t count){

    ?????????void?* ret = dst;

    ?????????if?(dst <= src || (char?*)dst >= ((char?*)src + count)) {

    ???????????????????// 若dst和src區域沒有重疊,則從起始處開始逐一拷貝

    ???????????????????while?(count--){

    ????????????????????????????*(char?*)dst = *(char?*)src;

    ????????????????????????????dst = (char?*)dst + 1;

    ????????????????????????????src = (char?*)src + 1;

    ???????????????????}

    ?????????}

    ?????????else{

    ????????// 若dst和src 區域交叉,則從尾部開始向起始位置拷貝,這樣可以避免數據沖突

    ???????????????????dst = (char?*)dst + count - 1;

    ???????????????????src = (char?*)src + count - 1;

    ?

    ???????????????????while?(count--){

    ????????????????????????????*(char?*)dst = *(char?*)src;

    ????????????????????????????dst = (char?*)dst - 1;

    ????????????????????????????src = (char?*)src - 1;

    ???????????????????}

    ?????????}

    ?

    ?????????return(ret);

    }

    當src和dst區域沒有重疊時,兩個函數是完全一樣的。否則,memcpy不能正常工作的,memmove是可以正常工作的。

    4.Windows平臺

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    24

    25

    26

    27

    28

    29

    30

    31

    32

    #include <stdio.h>

    #include <string.h>

    ?

    /* VS2010, Windows XP, Debug模式下運行 */

    int?main(void)

    {??

    ????void?test_memfunc(void);

    ????test_memfunc();

    ?

    ????return?0;

    }

    ?

    void?test_memfunc(void){

    ?

    ????char?s1[] =?"abcdefgefghijklmnopq";//首地址:0x0012ff48

    ????char?s2[] =?"123456789";//首地址:0x0012ff34

    ????char?*c =?NULL;

    ?

    ????int?l =?sizeof(s1);//數組s1長度為21

    ?

    ?????/*

    ?????內存重疊 : s2覆蓋了原s1()的一部分空間。

    ?????即: s2(0x0012ff34-0x0012ff49)?? 的內存地址范圍和s1(0x0012ff48-0x0012ff5c)的內存地址范圍發生重疊

    ?????*/

    ?????c = memcpy(s2,s1,sizeof(s1));//改用memmove同樣運行出錯

    ?

    ?????/*

    ?????運行出錯:變量s1損壞。

    ?????Run-Time Check Failure #2 - Stack around the variable 's2' was corrupted.

    ?????*/

    ?????printf("%s",s1);

    }

    ?windows平臺下,當發生內存重疊的時候,都不能正常運行,運行棧被破壞,提示錯誤:Run-Time Check Failure #2 - Stack around the variable 's2' was corrupted.

    ?

    參考鏈接:

    //https://blog.csdn.net/sinat_30071459/article/details/72771137
    //http://www.kuqin.com/clib/string/strncpy.html
    //http://blog.haipo.me/?p=1065
    //https://www.cnblogs.com/Benoly/p/3845000.html
    //http://www.kuqin.com/clib/string/strncpy.html

    ?

    總結

    以上是生活随笔為你收集整理的函数 —— strncpy() (内存重叠) memcpy() memmove() 一个字符串拷贝给另一个字符串的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    国产精品中文字幕在线播放 | 伊人久久影视 | 日韩视频免费观看高清 | 在线色亚洲| 99se视频在线观看 | 手机色站 | 五月天久久激情 | 亚洲精品视频在线免费播放 | 国产精品久久久久久久久免费 | 成人91在线 | 国产在线中文字幕 | 国产精品美女久久久久久免费 | 久久在现视频 | 99久久99久久综合 | 成人黄大片视频在线观看 | 五月情婷婷 | 久久成人高清视频 | 国产资源精品在线观看 | 亚洲欧美经典 | 久久久天堂 | 成年人三级网站 | 国产一级二级三级视频 | 国产精品免费在线观看视频 | 色在线网| 欧美污网站 | 国产日韩三级 | 成人久久久久久久久 | 国产成人精品午夜在线播放 | 91av亚洲| 18性欧美xxxⅹ性满足 | 国产视频1| 成人免费中文字幕 | 午夜av大片| 日韩美一区二区三区 | 综合色站| 免费av的网站 | 中文字幕有码在线观看 | 久久久久伦理电影 | 永久免费在线 | 超碰免费观看 | 国偷自产中文字幕亚洲手机在线 | 插插插色综合 | 国产日韩欧美视频 | 亚洲日本激情 | 超碰大片 | 日本中文字幕在线观看 | 国产黄免费在线观看 | 成人影片在线免费观看 | 手机av在线网站 | 狠狠躁日日躁狂躁夜夜躁av | 99久久精品国产毛片 | 在线观看91视频 | 天天操天天吃 | 99精品视频免费全部在线 | 日韩黄色中文字幕 | 欧美日韩成人 | 国产美腿白丝袜足在线av | 99久久免费看| 亚州精品国产 | 99久久精品免费看国产麻豆 | 在线观看国产区 | 亚洲精品在线观看av | 欧美一级久久久久 | 日韩素人在线观看 | 国产黄色一级片在线 | 99久热精品| 一区二区三区免费在线观看 | 一区二区三区电影 | 在线亚洲人成电影网站色www | 99久久国产免费看 | 婷婷激情网站 | 亚洲免费av网站 | 亚洲丝袜一区二区 | 国产精品99久久久久人中文网介绍 | 草久久久久 | 91尤物国产尤物福利在线播放 | 日本夜夜草视频网站 | 免费观看午夜视频 | a天堂在线看| 国产精品久久久久久吹潮天美传媒 | av一级一片| 樱空桃av| 五月婷激情| 日韩免费视频一区二区 | 97精品国产91久久久久久久 | 久久激情电影 | 99久久夜色精品国产亚洲 | 日韩高清免费在线观看 | 免费看污网站 | 美国av大片 | 国产老熟 | 久久综合福利 | 午夜美女网站 | 国产精品亚洲综合久久 | 在线免费观看黄 | 天天鲁天天干天天射 | 97在线视频免费播放 | 91日韩在线播放 | 日本99精品 | 一区二区久久久久 | 亚洲乱码国产乱码精品天美传媒 | 日韩午夜三级 | 热久久电影 | 欧美成人猛片 | 国产亚洲精品综合一区91 | 欧美日韩精品二区第二页 | 国产手机免费视频 | 五月激情丁香婷婷 | 热久久国产精品 | 99久久爱 | 在线观看一区视频 | 亚洲欧美日韩国产一区二区三区 | 国产婷婷视频在线 | 最新日韩视频 | 精品国产欧美一区二区三区不卡 | av免费高清观看 | 999成人 | 97超碰精品 | 欧美日韩一区二区三区视频 | 亚洲成人家庭影院 | 中文字幕成人一区 | 久久在线精品视频 | 国产精品久久久久一区二区 | 日韩久久精品一区二区三区 | 国产免费久久精品 | 天天干人人插 | 最近2019中文免费高清视频观看www99 | 国语麻豆 | 91中文在线视频 | 男女激情免费网站 | 亚洲aaa毛片 | 精品国内自产拍在线观看视频 | 国产在线观看一区 | 国产精品久久久久久久7电影 | 中文字幕在线有码 | 97精品国产97久久久久久春色 | 91大神免费视频 | 99精品小视频| 你操综合| 涩涩伊人 | av成人在线看 | 日韩精品专区在线影院重磅 | 91九色最新地址 | 狠狠网站| 99久久激情视频 | 激情在线网 | 国产精成人品免费观看 | 久久久国产电影 | 日本韩国精品在线 | 国产精品成人av电影 | 国产伦理一区二区 | 免费色婷婷 | a久久免费视频 | 三级视频国产 | 成人三级黄色 | 夜夜躁狠狠躁日日躁视频黑人 | 午夜久久 | 人人爽久久涩噜噜噜网站 | 国产97在线视频 | 91成人精品一区在线播放 | 在线观看深夜福利 | 一区电影| 日韩国产精品毛片 | 中文字幕制服丝袜av久久 | 美女网站在线免费观看 | 中文字幕亚洲情99在线 | 麻豆视频在线免费看 | jizz欧美性9 国产一区高清在线观看 | 一区二区中文字幕在线播放 | 日韩| 国产成人三级一区二区在线观看一 | 国产精品资源在线 | 国内精品久久久久影院一蜜桃 | 4438全国亚洲精品在线观看视频 | 黄污视频大全 | 国产精品成人a免费观看 | 国产视频不卡 | 丰满少妇高潮在线观看 | 伊人网站 | 中文乱码视频在线观看 | 日韩一区二区免费播放 | 夜夜看av | 国产精品一区二区av麻豆 | 99精品视频在线观看 | 国产午夜精品视频 | 国产护士hd高朝护士1 | 久久国产精品久久精品 | 欧美在线久久 | 91最新网址 | 欧美日韩中文国产一区发布 | 在线免费av网 | 国产破处在线视频 | 911精品美国片911久久久 | www久久久久 | 国产成人久久精品亚洲 | 国产久草在线观看 | 欧美极品xxxx| 久久久五月天 | 奇米影视8888 | 国产流白浆高潮在线观看 | 日韩av不卡在线观看 | 国产爽视频 | 日韩精品久久一区二区 | 成年人在线电影 | 99精品国产在热久久下载 | 国产精彩在线视频 | 久久黄色成人 | 天天爽夜夜爽精品视频婷婷 | 91丨九色丨国产在线观看 | 国产精品成人免费 | 久久9精品 | 黄色在线观看污 | 特级西西444www高清大视频 | avove黑丝 | 香蕉在线观看视频 | 91免费在线 | 天天综合网~永久入口 | 色狠狠操| 奇米网8888 | 色婷婷播放 | 国产精品美女999 | 99国产一区二区三精品乱码 | 91av视频在线播放 | 伊人激情网 | 在线观看精品一区 | 久久久影院一区二区三区 | 久久久在线免费观看 | 66av99精品福利视频在线 | 免费黄色看片 | 亚洲精品毛片一级91精品 | 久久国产精品一区二区三区 | 超碰在线人人草 | 久久嗨 | 天天躁日日躁狠狠躁av中文 | 久草在线一免费新视频 | 欧美综合在线观看 | 超级碰碰免费视频 | 少妇激情久久 | 99 精品 在线| 中文国产字幕 | 91精品免费视频 | 97理论电影 | 综合精品久久久 | 亚洲永久精品视频 | 亚洲动漫在线观看 | 中文字幕久久精品 | 久久久久久久久久免费 | 欧美精品二区 | 免费网站黄色 | www激情com | 久久国产片 | 97超视频 | www.成人久久 | 免费在线观看av网站 | 国产黄色大片 | 亚洲闷骚少妇在线观看网站 | 亚洲网站在线看 | 国产精品片 | 欧美一级电影免费观看 | 国产精品九九九九九九 | 国产精品久久久久av福利动漫 | 97福利在线观看 | 日韩手机视频 | 成人黄色片免费看 | 综合久久久久久 | 日本精品一区二区三区在线播放视频 | 久久大视频 | 91精彩视频在线观看 | 天天色天天射综合网 | 在线免费观看视频一区二区三区 | 成年人视频在线免费观看 | 2023亚洲精品国偷拍自产在线 | 欧美国产三区 | 国产99免费| 狠狠干美女 | 五月天伊人 | 精品国自产在线观看 | 美女免费黄网站 | 成人a免费视频 | 久久99国产精品 | 亚洲成av人影院 | 国产精品亚洲精品 | 成人永久免费 | 国产成人久久精品77777综合 | 久久99热这里只有精品 | 国产麻豆精品95视频 | 日一日操一操 | 在线岛国av| 97超碰精品 | 91视频高清免费 | 久久久久久久久毛片精品 | 亚洲精品国产精品国自产观看浪潮 | 欧美激情视频在线免费观看 | 免费色av | 久久99国产精品视频 | 在线导航av| 精品在线观看国产 | 久久国产午夜精品理论片最新版本 | 97超在线视频 | av大片免费在线观看 | 欧美韩日在线 | 久久久亚洲网站 | 国产 av 日韩 | 日日夜夜精品免费视频 | 国产一区二区久久 | 麻豆精品视频在线观看免费 | 一区二区亚洲精品 | 色综合天天做天天爱 | 国产精品1000 | 92av视频| 免费午夜av| 91看片淫黄大片在线播放 | 日本91在线| 超碰97中文 | 国产一级视频 | 国产日韩欧美中文 | 天堂麻豆 | 日韩素人在线观看 | 手机av在线网站 | 91视频 - v11av| 在线观看亚洲国产 | 啪嗒啪嗒免费观看完整版 | 人人舔人人干 | 香蕉影视app | 在线va网站 | 可以免费观看的av片 | 97爱 | 精品久久99 | 天天爽网站 | 国产久草在线观看 | 五月天国产 | 日本不卡一区二区三区在线观看 | 91在线国内视频 | 国产精品激情偷乱一区二区∴ | 欧美黄色高清 | 国产原创中文在线 | 99免费国产 | 摸bbb搡bbb搡bbbb | 日本在线精品视频 | 免费91在线观看 | 国产在线观看h | 狠狠婷婷| 国产一级免费播放 | 中文字幕av一区二区三区四区 | 精品国产区在线 | 91一区二区三区在线观看 | 日韩精品不卡 | 在线国产激情视频 | 在线观看视频你懂的 | 三级性生活视频 | 伊人丁香 | 午夜精品电影一区二区在线 | 激情欧美xxxx| 九九九在线观看视频 | 国产一区二区手机在线观看 | 精品视频免费 | 天天干天天摸天天操 | 999久久久免费视频 午夜国产在线观看 | 亚洲一区二区麻豆 | 国产精品资源在线 | 日本一区二区高清不卡 | 亚洲精品美女免费 | 午夜精品一区二区三区免费 | 超碰免费观看 | 国产一区二区在线播放视频 | 亚洲成人精品在线 | 久久y | 人人干人人超 | 午夜精品99久久免费 | 日韩国产欧美在线播放 | 91在线日韩 | 国产精品成人av电影 | 成 人 免费 黄 色 视频 | 91成人精品 | 波多野结衣一区三区 | 在线视频观看国产 | 少妇精品久久久一区二区免费 | 亚洲黄色在线播放 | 在线精品视频免费播放 | 免费看污网站 | 中文不卡视频在线 | 成人精品电影 | 国产精品手机在线观看 | 亚洲精品一区二区精华 | www.com黄| 亚洲精品视频在线免费播放 | 黄色毛片一级片 | 国产日韩欧美视频在线观看 | 欧美另类xxx | 日韩一级片网址 | 国产三级视频在线 | 美女久久一区 | 婷婷在线视频观看 | 久久久性| 免费在线观看中文字幕 | 欧美精品久久久久 | 欧美日韩国产亚洲乱码字幕 | 91av中文| 国产精品美女久久久久久2018 | 插插插色综合 | 91热| 91麻豆文化传媒在线观看 | 久久久久久国产精品免费 | 99热9 | 91亚州| 国产午夜精品av一区二区 | 日韩精品久久久久久 | 激情五月婷婷综合网 | 婷婷去俺也去六月色 | 精品国产观看 | 国产精品video | 91最新在线观看 | 天天天天爱天天躁 | 免费三及片 | 91丨九色丨高潮 | 91桃色国产在线播放 | 国产高清在线看 | 激情视频免费观看 | 日本中文字幕在线播放 | 人人舔人人插 | 久久免费的视频 | 午夜少妇一区二区三区 | 热久精品 | 国产精品久久精品国产 | 五月天视频网站 | 国产精品一区二区久久精品 | 日韩精品久久久久 | 在线精品国产 | 9999精品| 久久久免费国产 | 九九免费精品 | 91中文在线视频 | 美女视频久久 | 午夜在线观看影院 | 免费在线激情电影 | 欧美日韩亚洲一 | 黄色三级久久 | 高清av影院 | 久久久久久久久久久国产精品 | 99视频这里只有 | 色综合久久综合 | 欧美精品一区二区免费 | 日日操天天爽 | www.五月天婷婷 | 午夜久草 | 日韩黄色在线电影 | 麻豆久久一区二区 | 夜夜爽88888免费视频4848 | 欧美日韩中文国产一区发布 | 国产亚洲亚洲 | 亚洲va天堂va欧美ⅴa在线 | av片一区二区 | 草久在线 | 可以免费观看的av片 | 国产日本亚洲高清 | av福利在线播放 | 欧美激情第一页xxx 午夜性福利 | 麻豆久久久久 | 国产精品一区二区三区观看 | 免费在线观看污 | 欧洲高潮三级做爰 | 日韩中文字幕在线不卡 | 日韩免费一二三区 | 久久久久久不卡 | 91免费看黄| 97视频在线观看视频免费视频 | 日日夜夜狠狠 | 在线成人短视频 | 日韩免费在线视频观看 | 久久少妇免费视频 | 美女视频a美女大全免费下载蜜臀 | 青青河边草免费观看 | 999视频在线观看 | 国产精品久久麻豆 | 亚洲欧洲成人精品av97 | 狠狠色综合欧美激情 | 精品一区在线看 | 婷婷六月天丁香 | 欧美激情在线网站 | 黄色的视频 | 免费国产黄线在线观看视频 | 欧美极品xxxxx | 五月婷网站 | 高清av在线免费观看 | 三级毛片视频 | 亚洲精品国产自产拍在线观看 | 日韩国产在线观看 | 天天操狠狠操夜夜操 | 欧美激情视频三区 | japanese黑人亚洲人4k | 久久久免费精品视频 | 国产精品久久嫩一区二区免费 | 亚洲精品短视频 | 国产精品久久久久四虎 | 欧美另类sm图片 | 美国人与动物xxxx | 在线www色 | 国内精品久久天天躁人人爽 | 韩国三级一区 | 久久久五月天 | 国产成人在线一区 | 国产高清在线看 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 亚洲精品国偷拍自产在线观看蜜桃 | 在线草| 亚洲区视频在线 | 永久免费观看视频 | 国产亚洲视频系列 | 在线精品视频免费播放 | 久久99热这里只有精品 | 97国产人人 | 国产视频1区2区3区 久久夜视频 | 免费合欢视频成人app | 手机在线黄色网址 | 日韩精品视频在线免费观看 | 国产无套一区二区三区久久 | 久久五月网 | 网址你懂的在线观看 | 中文字幕精品一区 | 在线视频免费观看 | 手机在线观看国产精品 | 精品a在线 | 天干啦夜天干天干在线线 | 亚洲无在线 | 超碰在线1 | 在线观看黄网站 | 在线综合色 | 人人爽人人澡人人添人人人人 | 久久久激情视频 | 黄色软件视频大全免费下载 | 日韩欧美有码在线 | 久久久九九 | 9在线观看免费高清完整版在线观看明 | 国产午夜免费视频 | 500部大龄熟乱视频使用方法 | 中文字幕在线影院 | 日韩三级免费 | www黄色软件 | 久久综合九色 | 亚洲视频免费在线看 | 激情丁香综合五月 | 五月天婷婷视频 | 99精品免费久久久久久日本 | 麻豆免费视频观看 | 免费黄色av | 毛片二区 | 亚洲精品高清一区二区三区四区 | 97成人精品视频在线观看 | 偷拍久久久 | 福利久久久 | 婷婷激情综合网 | 一区二区男女 | 欧美一二三视频 | 国产黄色av | 99爱在线观看 | 九九热在线观看视频 | 西西444www大胆无视频 | 天天鲁一鲁摸一摸爽一爽 | 中文字幕 成人 | 欧美性大战久久久久 | 国语精品久久 | 香蕉视频国产在线观看 | 9999亚洲| 一级黄色大片 | 婷婷在线视频观看 | 草久在线播放 | 亚洲精品视频在线免费 | 久久精品看片 | 免费网站黄 | 天天躁天天躁天天躁婷 | 国产精品久久艹 | 国内综合精品午夜久久资源 | 日韩电影中文 | 久久免费毛片视频 | 99视频这里有精品 | 久久免费看a级毛毛片 | 午夜精品一区二区国产 | 国产精品九九热 | 日日摸日日| 97视频人人免费看 | 亚洲乱码国产乱码精品天美传媒 | 久久国产精品99久久久久久进口 | 中文字幕丝袜一区二区 | 69av在线播放 | 91高清免费在线观看 | 久久综合干 | 久久日韩精品 | 日韩激情在线 | 中文字幕文字幕一区二区 | 99久久这里只有精品 | av电影久久 | 久久电影色 | 国产一级电影网 | 91av在线免费播放 | 在线视频欧美精品 | 五月精品 | 国产高清视频在线播放一区 | 欧美精品一区二区在线播放 | 日日夜夜精品免费视频 | 亚洲香蕉视频 | 色婷婷狠狠五月综合天色拍 | 婷婷综合亚洲 | 久久免费国产视频 | 国产拍揄自揄精品视频麻豆 | 欧美色图88 | 亚洲精品中文字幕视频 | 欧美一级视频免费 | 在线a亚洲视频播放在线观看 | 国产黄色精品网站 | 欧美精品在线一区二区 | 久久美女电影 | 国产a网站 | 最新av在线播放 | 久久久久五月天 | 手机在线欧美 | 国产成人精品一二三区 | 久草视频在线免费看 | 久久综合婷婷综合 | 日韩电影一区二区三区 | 国产久视频 | 日韩免费在线观看网站 | 久久精品一区二区三区中文字幕 | 狠狠色噜噜狠狠 | 超碰公开在线观看 | 日韩免费在线视频 | 天天射天天操天天色 | 国产精品亚洲片在线播放 | 欧美亚洲久久 | 伊在线视频 | 久久成人视屏 | 五月开心网 | 99国产精品视频免费观看一公开 | 欧美一二三区播放 | 国产999精品| 丁香视频全集免费观看 | 日本大尺码专区mv | 99精品区 | 999久久久久久久久6666 | 国产在线国偷精品产拍免费yy | 在线观看国产亚洲 | 久青草电影 | 美女久久久久久久久久 | 九七在线视频 | 狠狠色丁香九九婷婷综合五月 | 99久久久成人国产精品 | 亚洲精品国久久99热 | 日本午夜在线观看 | 人人爽人人看 | 在线看日韩av | 最近日韩免费视频 | 久久人人爽人人爽人人片av免费 | 亚洲久草在线视频 | 天天插一插| 五月婷婷激情五月 | 国产精品毛片久久久久久久 | 国产精品黄色影片导航在线观看 | 日本在线观看中文字幕 | 中文字幕 91 | 蜜臀aⅴ精品一区二区三区 久久视屏网 | 国产69久久精品成人看 | 97电影网手机版 | sesese图片 | 手机在线观看国产精品 | 免费观看成人av | 天天草综合网 | 久草视频中文在线 | 九色91福利 | 久久精品国产99 | 天堂黄色片 | 在线观看网站黄 | 在线观看岛国片 | 五月婷婷久久丁香 | av一级网站 | 黄色毛片网站在线观看 | 色婷婷久久一区二区 | 欧美一级片免费 | 久久国产99| 国产精品久久久久久久久久久不卡 | 国产伦理精品一区二区 | 久草电影在线观看 | 国产精品免费不 | av不卡免费在线观看 | 国产日韩欧美在线 | 国产在线视频资源 | 国产高清视频在线播放一区 | 午夜影视剧场 | 久久艹国产视频 | 91片黄在线观看 | 中文字幕亚洲欧美日韩 | 国产一级黄 | 欧美国产日韩一区二区 | 国产精品永久在线观看 | 亚洲免费在线看 | 天天操网址| 99 国产精品 | 国产日韩精品一区二区在线观看播放 | 久久99视频免费观看 | 久久免费福利 | 亚洲黄网址| 日日干天天 | 香蕉在线视频观看 | 成人毛片久久 | 国产日韩av在线 | 超碰官网 | 国产又黄又爽又猛视频日本 | 美女在线国产 | 国产拍揄自揄精品视频麻豆 | 久久久久中文字幕 | 色婷婷综合五月 | 亚洲无吗av | 久久精品精品电影网 | 日本成人中文字幕在线观看 | 超碰在线网| 精品九九九九 | 色综合久久综合中文综合网 | 六月丁香激情综合 | 国产手机视频精品 | 亚洲成 人精品 | 最近在线中文字幕 | 国产日韩欧美网站 | 国产精品99视频 | 日韩欧美精品一区二区 | 伊人久久电影网 | 在线观看视频黄 | 国产精品国产自产拍高清av | 韩国三级一区 | 中文国产成人精品久久一 | 91色一区二区三区 | 99久久婷婷国产精品综合 | 九九免费在线观看视频 | 亚洲国产精品传媒在线观看 | 日韩欧美一区二区不卡 | 999国产| 亚洲国产精品成人va在线观看 | 久久免费电影网 | 欧美日韩二区在线 | 久久全国免费视频 | 在线观看精品一区 | 国产美女精品人人做人人爽 | 在线免费观看视频你懂的 | 欧美福利在线播放 | 三上悠亚一区二区在线观看 | 日韩免费一级a毛片在线播放一级 | 国产又粗又硬又长又爽的视频 | 伊人色**天天综合婷婷 | 日韩小视频网站 | 成人黄色在线 | 久久久久久蜜桃一区二区 | 成人精品99 | 欧美色道 | 日韩电影一区二区在线观看 | 免费黄色看片 | 久久亚洲私人国产精品va | 亚洲va欧洲va国产va不卡 | 欧美日韩一二三四区 | 91在线91拍拍在线91 | 国产精品成人aaaaa网站 | 91字幕 | 久草a在线| 欧美在线视频一区二区 | 96av视频 | 婷婷av电影| 免费网站在线观看成人 | 亚洲婷婷综合色高清在线 | 久久大片网站 | 少妇高潮冒白浆 | 一级国产视频 | 一级特黄av | 亚洲精品av中文字幕在线在线 | 亚洲精选久久 | 天天插天天 | 成人91在线观看 | h网站免费在线观看 | 最近最新mv字幕免费观看 | 久久99久久99精品免观看粉嫩 | 久草视频观看 | 免费日韩 精品中文字幕视频在线 | 久久高清av | 99性视频 | 日日夜夜精品免费观看 | 国产资源在线观看 | 99亚洲精品在线 | 国产美女搞久久 | 国内精品在线看 | 97国产在线 | 亚洲日本韩国一区二区 | 欧美最猛性xxxxx免费 | 伊人亚洲精品 | 91精品国产99久久久久 | bbbbb女女女女女bbbbb国产 | 久久线视频 | 色噜噜在线观看 | 欧美男男tv网站 | 欧美日韩国产伦理 | 99视频免费在线观看 | 日韩在线观看不卡 | 蜜桃av久久久亚洲精品 | 国产最新精品视频 | 欧美人交a欧美精品 | 日韩免费电影网站 | 黄色aaa级片 | 欧美日韩不卡在线观看 | 狠狠狠狠狠狠狠狠 | 毛片久久久 | av高清一区二区三区 | 一级片免费在线 | 成人蜜桃视频 | 色婷婷综合久色 | 免费观看www小视频的软件 | 免费看黄在线看 | 综合色影院 | 免费观看黄色av | 国产美腿白丝袜足在线av | 中文字幕亚洲在线观看 | 欧美色综合 | 欧美一级xxxx | 亚洲精品网址在线观看 | 中文字幕久久网 | 日韩在线视频播放 | 日韩欧美91 | 18久久久久久| 免费亚洲精品视频 | 人人插人人玩 | 99精品视频网 | 香蕉视频国产在线 | 麻豆视频国产在线观看 | 久久国产精品99国产精 | 99久久久久久久久久 | 欧美a视频| 国产片免费在线观看视频 | 国产久草在线观看 | av中文字幕在线看 | 国产精品免费在线播放 | 毛片美女网站 | 97国产在线播放 | 操操操操网 | 午夜天使 | 91手机视频在线 | 日本久久中文 | 免费久久视频 | 欧美一级免费黄色片 | 999国内精品永久免费视频 | 最新91在线视频 | 不卡av电影在线 | 99久久精品国产免费看不卡 | 免费观看国产精品视频 | 中文字幕日本电影 | 亚洲视频 一区 | 韩国一区在线 | 国产视频 亚洲精品 | 日韩黄视频 | 日日操天天操夜夜操 | 亚洲精品动漫成人3d无尽在线 | 黄色软件在线观看免费 | 国产高清免费视频 | 一区二精品 | 国产精品初高中精品久久 | 亚州中文av | 九九热免费在线视频 | 久色婷婷| 97超碰人人澡人人爱 | 天天天干天天天操 | 日本在线观看一区 | 欧美极品少妇xbxb性爽爽视频 | 国产精品小视频网站 | 中文字幕久久久精品 | 久久久99精品免费观看乱色 | 色综合天天综合在线视频 | 人人玩人人添人人澡超碰 | av不卡中文字幕 | 久久久国产一区二区三区四区小说 | 午夜色场 | 在线亚洲播放 | 日韩在线在线 | 亚洲电影黄色 | 狠狠色噜噜狠狠狠狠 | 久久人人爽人人片av | 国产一区成人在线 | 欧美成人中文字幕 | 一级黄色在线免费观看 | 国产免费视频一区二区裸体 | 欧美另类调教 | 精品久久久免费视频 | 91毛片在线观看 | 日本激情视频中文字幕 | 99精品在线观看 | 久久久资源 | 日本中文字幕高清 | 精品久久一级片 | 亚洲第一成网站 | 国产伦理一区 | 国产免费一区二区三区网站免费 | 中文字幕在线国产 | 嫩小bbbb摸bbb摸bbb | 欧美成人性战久久 | 91在线免费视频观看 | 日韩欧美一区二区三区视频 | 中文字幕在线观看av | 成人毛片一区二区三区 | 在线色吧 | 91av在线免费视频 | 夜夜视频| 美女网站在线播放 | 最新国产精品视频 | 男女啪啪网站 | 国产精品久久久久婷婷二区次 | 99久久精品免费看国产一区二区三区 | 波多野结衣视频一区二区三区 | 狠狠干2018 | 久久在线精品 | 中文字幕在线观看亚洲 | 国产精品视频在线看 | 91视频在线播放视频 | 黄色精品一区二区 | 亚洲动漫在线观看 | 九九久久在线看 | 久久久久国产一区二区三区 | 最近中文字幕完整视频高清1 | 人人狠狠| 337p日本欧洲亚洲大胆裸体艺术 | 免费高清无人区完整版 | 黄色在线视频网址 | 国产黄色免费看 | www.天天综合 | 日韩大片免费在线观看 | 日韩免费网址 | 999成人国产 | 久久伊人八月婷婷综合激情 | 久久五月婷婷综合 | 色综合久久88色综合天天免费 | 欧美一性一交一乱 | 丝袜美腿亚洲综合 | 91丨九色丨国产在线观看 | 日韩欧美精品一区二区三区经典 | 婷婷电影在线观看 | 久久大片| 99久久精品国产免费看不卡 | 日韩激情免费视频 | 久久伊人免费视频 | 亚洲视频专区在线 | 欧美日韩中文在线视频 | 国产成人av一区二区三区在线观看 | 日韩精品一区二区三区免费视频观看 | 天天草天天色 | 日韩av网址在线 | 伊人亚洲精品 | 在线 日韩 av | 日韩理论片在线观看 | 丁香婷婷网 | 国产生活一级片 | 在线免费观看国产 | 国产小视频精品 | 在线涩涩| 亚洲激情视频在线观看 | 成年美女黄网站色大片免费看 | 国产精品毛片一区二区在线看 | 国产在线无 | 亚洲国产精品999 | 成年人在线播放视频 | 午夜成人免费电影 | 欧美午夜精品久久久久久浪潮 | 国产一区二区在线观看视频 | 久久久久成人免费 | 中文字幕在线观看第三页 | 欧美综合色 | 亚洲永久精品在线 | 97超碰人人 | 欧美激情视频久久 | 久久久天堂 | 99久久久国产精品美女 | 久久99影院 | 久热免费在线观看 | 亚洲成年人在线播放 | 国产亚洲精品久久久久久移动网络 | 天天干天天干天天色 | 91日韩在线专区 | 日韩精品免费一区二区 | 久久成人午夜视频 | 亚洲国产欧美一区二区三区丁香婷 | 九草在线视频 | 日韩av一区二区三区四区 | 久久中文字幕在线视频 | 日p视频 | 婷婷爱五月天 | 中文字幕亚洲精品日韩 | 91麻豆福利 | 亚洲精品av中文字幕在线在线 | 亚洲三级黄 | 国产精品免费观看国产网曝瓜 | 亚洲伊人成综合网 | 亚洲国产视频在线 | 国产成人精品女人久久久 | 精品美女久久久久久免费 | 91久久久国产精品 | av免费观看在线 | 2019天天干夜夜操 | 久久精品美女视频 | 免费日韩一区二区 |