日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Socket网络编程】14. perror()、errno 的使用

發(fā)布時間:2025/3/21 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Socket网络编程】14. perror()、errno 的使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
經(jīng)常會在socket網(wǎng)絡編程時看到errno和perror(),他們是什么呢?
函數(shù)定義:
void perror(const char *s); perror ("open_port");

他是c語言庫函數(shù),需要包含頭文件(不可以掉了這個頭文件):

#include <stdio.h> //包含perror的頭文件
函數(shù)說明

perror ( )用 來 將 上 一 個函 數(shù) 發(fā) 生 錯 誤 的 原 因 輸 出 到 標 準 設(shè)備 (stderr) 。參數(shù) s 所指的字符串會先打印出,后面再加上錯誤原因字符串。此錯誤原因依照全局變量errno的值來決定要輸出的字符串。
  
  在庫函數(shù)中有個errno變量,每個errno值對應著以字符串表示的錯誤類型。當你調(diào)用"某些"函數(shù)出錯時,該函數(shù)已經(jīng)重新設(shè)置了errno的值。perror()函數(shù)只是將你輸入的一些信息和現(xiàn)在的errno所對應的錯誤一起輸出。
  errno 是記錄系統(tǒng)的最后一次 錯誤代碼 。代碼是一個int型的值,在errno.h中定義。
  只有當一個 庫函數(shù)失敗時,errno才會被設(shè)置。當函數(shù)成功運行時,errno的值不會被修改。這意味著我們不能通過測試 errno 的值來判斷是否有錯誤存在。反之,只有當被調(diào)用的函數(shù)提示有錯誤發(fā)生時檢查 errno 的值才有意義。
查看 錯誤代碼 errno 是調(diào)試程序的一個重要方法。當linux C api函數(shù)發(fā)生異常時,一般會將errno變量(需include errno.h)賦一個整數(shù)值,不同的值表示不同的含義,可以通過查看該值推測出錯的原因。在實際編程中用這一招解決了不少原本看來莫名其妙的問題。

舉例:
#include <stdio.h>//包含perror的頭文件 #include <process.h> #include <direct.h>//包含mkdir、rmdir的頭文件 #include <iostream> using namespace std; int main(void) {int status;system("cls");//清屏status = mkdir("cam");//創(chuàng)建文件夾,創(chuàng)建成功則返回0,否則返回-1cout << status << endl;(!status) ? (printf("Directory created\n")) : (perror("Unable to create directory\n"));//!status不等于0為真,結(jié)果為第一個,否則為第二個system("pause");//屏幕暫停system("dir"); /*顯示創(chuàng)建后當前文件夾下的文件信息*/status = rmdir("cam"); /*刪除創(chuàng)建的文件夾book*/(!status) ? (printf("Directory deleted\n")) :(perror("Unable to delete directory"));system("pause");return 0; }


運行結(jié)果:


如果我們的文件夾已經(jīng)存在,仍然使用mkdir函數(shù)創(chuàng)建文件夾時,會發(fā)生什么呢?(此時perror函數(shù)就會發(fā)揮作用)


因為cam文件夾已經(jīng)存在,所以mkdir返回-1,perror除了輸出:Unable to create directory,后面緊跟著具體原因:File exists

總結(jié)

以上是生活随笔為你收集整理的【Socket网络编程】14. perror()、errno 的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 伊人影院综合在线 | 色 综合 欧美 亚洲 国产 | 亚洲精品大片www | 亚洲五月激情 | 91 高清 在线 制服 偷拍 | 亚洲拍拍视频 | av男人天堂av| 在线免费h | 中文文字幕一区二区三三 | 国产精品成熟老女人 | 一二区免费视频 | 亚洲三级中文字幕 | 午夜精品欧美 | 欧美精品aa| 农民工hdxxxx性中国 | 激情噜噜 | 女人十八岁毛片 | 免费午夜视频 | 日本中文字幕在线观看视频 | 亚洲欧美视频在线 | 99国产精品免费 | 操操干| 天天撸天天射 | 日韩91视频| 日韩午夜在线播放 | 日日躁夜夜躁aaaabbbb | 久久亚洲一区二区三区四区五区 | 高清av在线 | 97干视频 | 动漫3d精品一区二区三区乱码 | 老司机精品导航 | 久久久久久久黄色片 | 黄色三级视频在线观看 | 2019日韩中文字幕 | 51ⅴ精品国产91久久久久久 | 免费成人深夜夜国外 | 香蕉av在线播放 | 久久福利社| 亚洲伦理天堂 | 色欲狠狠躁天天躁无码中文字幕 | 国产美女黄网站 | 国产精品传媒视频 | 久久福利在线 | 竹菊影视日韩一区二区 | 76少妇精品导航 | 免费一级特黄特色大片 | 91看片在线 | 都市激情 自拍偷拍 | 97视频在线观看免费高清完整版在线观看 | 欧美成人三级 | 超碰干| 免费一级片 | 精品人妻人伦一区二区有限公司 | av中文字幕亚洲 | 中文字幕人妻一区二区三区 | 大陆农村乡下av | 国产制服91一区二区三区制服 | 久久久久亚洲av无码a片 | 国产福利一区二区三区 | 国产视频精品久久 | 老司机在线永久免费观看 | 麻豆精品在线看 | 免费h片在线观看 | 三级免费网址 | 久久综合av| 国精产品99永久一区一区 | 毛片网站在线观看 | 大吊一区二区三区 | 欧美aa在线 | 99精品自拍 | 成为性瘾网黄的yy对象后 | 日本美女视频 | 国产女主播一区 | 五月亚洲婷婷 | 超污视频在线观看 | av五十路 | 免费a大片 | 污污视频在线观看免费 | 91偷拍网| 日韩a在线播放 | 欧洲成人精品 | 日韩电影一区 | av在线播放中文字幕 | 国产福利在线视频观看 | 国产成人免费av一区二区午夜 | 中国a毛片| 国产一区二区视频免费观看 | 实拍女处破www免费看 | 欧美裸体xxxx极品少妇 | 亚洲xx网站 | www伊人网| 香港三日本8a三级少妇三级99 | 久久久久久久久99 | 精品久久久久久久久久久久久久久久久 | 又黄又湿的网站 | 综合色爱 | 成人在线观看一区二区三区 | 神马国产 | 男生和女生靠逼视频 |