校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Linux 中C語言getcwd()函數的用法

Linux 中C語言getcwd()函數的用法

熱門標簽:昆明電銷機器人價格 春運地圖標注app 江西全自動外呼系統報價 400的電話一般從哪里辦理 地圖標注人員分布 上海機器人外呼系統哪家好 益陽400電話申請辦理流程 梧州防封電銷卡 怎么用百度地圖標注坐標

Linux 中C語言getcwd()函數的用法

先來看該函數的聲明:

#includeunistd.h>
char *getcwd(char *buf,size_t size);

介紹:

參數說明:getcwd()會將當前工作目錄的絕對路徑復制到參數buffer所指的內存空間中,參數size為buf的空間大小。

普通的用法會是這樣:

#define MAX_SIZE 255
char path(MAX_SIZE);
getcwd(path,sizeof(path));
puts(path);

這樣會將工作目錄的絕對路徑復制到buf所指向的空間中,但如果路徑長度大于size,則會返回NULL,錯誤代碼為ERANGE.所以我們在定義path的時候得定義的足夠大,但這樣又會使得內存浪費,Linux的文件名長度限制為255個英文字符,理論上絕對路徑的大小應該可以足夠大,故而這樣使用總有返回NULL的時候,所以getcwd()個我們提供了下面的一種用法:

可以采取令 buf 為 NULL并使 size 為零(百度百科里介紹可以使用負值但我測試的時候是段錯誤)來使 getcwd 調用 malloc 動態給 buf 分配,但是這種情況要特別注意使用后釋放緩沖以防止內存泄漏。

#includestdio.h>
#includestdlib.h>
#includeunistd.h>
int main(void)
{
  char *path = NULL;
  path = getcwd(NULL,0);
  puts(path);
  free(path);
  return 0;
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • linux下c語言的多線程編程
  • Linux 下C語言獲取文件大小
  • Linux下C語言的幾道經典面試題小結(分享)
  • Linux 下C語言連接mysql實例詳解
  • linux C語言開發管道通信實例詳解
  • linux下C語言實現寫日志功能

標簽:河南 贛州 北京 惠州 九江 懷化 亳州 新疆

巨人網絡通訊聲明:本文標題《Linux 中C語言getcwd()函數的用法》,本文關鍵詞  Linux,中,語言,getcwd,函數,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux 中C語言getcwd()函數的用法》相關的同類信息!
  • 本頁收集關于Linux 中C語言getcwd()函數的用法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 高雄市| 宜城市| 胶南市| 南澳县| 辽阳市| 昌图县| 武穴市| 视频| 普格县| 大埔县| 贵州省| 河东区| 阳高县| 论坛| 乌兰浩特市| 大名县| 武山县| 遂平县| 枞阳县| 天等县| 中江县| 文山县| 南安市| 淮南市| 那曲县| 绥德县| 镇沅| 莎车县| 卢氏县| 永修县| 高碑店市| 莎车县| 丰顺县| 酒泉市| 响水县| 舟曲县| 新源县| 寿阳县| 彰武县| 格尔木市| 台中县|