<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      [apue] dup2的正確打開方式

      管道與重定向常常需要使用dup與dup2復(fù)制句柄,其中dup2又較為常用,但是使用dup2有幾個(gè)小坑需要注意。

      int dup2(int oldfd, int newfd);

      man手冊(cè)頁上是這樣講的,oldfd是想要復(fù)制的句柄,newfd是復(fù)制到的句柄號(hào),如果newfd已經(jīng)打開,dup2會(huì)先嘗試關(guān)閉,

      復(fù)制完成后,oldfd與newfd都將指向同一文件實(shí)例。一般需要close(oldfd)來減少不必要的引用。所以一般人可能會(huì)這樣寫代碼:

      1 if (dup2 (oldfd, newfd) != -1)
      2     close (oldfd); 

      但是有個(gè)例外的情況,就是oldfd==newfd,照man手冊(cè)頁上講,此時(shí)dup2將什么也不做,直接返回成功。

      此時(shí)oldfd與newfd相同,而close(oldfd)將導(dǎo)致文件的唯一引用被關(guān)閉,后續(xù)的操作可想而知也會(huì)失敗。

      所以萬無一失的dup2使用方法是這樣:

      1 if (oldfd != newfd) { 
      2     if (dup2 (oldfd, newfd) != -1)
      3         close (oldfd); 
      4 }

      樣例代碼

      posted @ 2019-06-11 09:12  goodcitizen  閱讀(754)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 久久精品夜色噜噜亚洲av| 中文字幕一区二区三区四区五区| 亚洲性日韩精品一区二区| 亚洲女同在线播放一区二区| 亚洲国产精品综合久久网各| 久久天天躁狠狠躁夜夜2020老熟妇| 狠狠躁日日躁夜夜躁欧美老妇| 999国产精品一区二区| 亚洲综合精品第一页| 成人午夜视频在线| 国产av精品一区二区三区| 国产成人a在线观看视频| 少妇人妻av毛片在线看| 亚洲一区在线成人av| 99国产欧美另类久久久精品| 国产三级a三级三级| 国产免费午夜福利在线观看| 久热久热免费在线观视频| 国产精品久久久久av福利动漫| 国产精品久久露脸蜜臀| 中文字幕日韩人妻一区| 国产99青青成人A在线| 欧美一区二区三区欧美日韩亚洲| 久久精品国产亚洲精品| 亚洲AVAV天堂AV在线网阿V| 国产羞羞的视频一区二区| 亚洲欧美日韩久久一区二区| 国产一区二区不卡在线| 国产精品视频一区不卡| 美女胸18大禁视频网站| 午夜精品福利亚洲国产| 久章草在线毛片视频播放| 青海省| www插插插无码免费视频网站| 欧美做受视频播放| 超碰成人人人做人人爽| 国产精品毛片久久久久久久| 撩起胸让我的?蹭来蹭去| 国产亚洲精品VA片在线播放| 亚洲熟妇精品一区二区| 国产精品入口中文字幕|