iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >Linux 中C语言getcwd()函数的用法
  • 813
分享到

Linux 中C语言getcwd()函数的用法

函数语言Linux 2022-06-04 21:06:38 813人浏览 泡泡鱼
摘要

Linux 中C语言getcwd()函数的用法 先来看该函数的声明: #include<unistd.h> char *getcwd(char *buf,size_t size); 介绍

Linux 中C语言getcwd()函数的用法

先来看该函数的声明:


#include<unistd.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 分配,但是这种情况要特别注意使用后释放缓冲以防止内存泄漏。


#include<stdio.h>
#include<stdlib.h>
#include<unistd.h>
int main(void)
{
  char *path = NULL;
  path = getcwd(NULL,0);
  puts(path);
  free(path);
  return 0;
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

--结束END--

本文标题: Linux 中C语言getcwd()函数的用法

本文链接: https://www.lsjlt.com/news/18844.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在Linux 中使用getcwd()函数
    这期内容当中小编将会给大家带来有关如何在Linux 中使用getcwd()函数,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。#include<unistd.h>char *getcw...
    99+
    2023-06-09
  • c语言中strlen函数的用法
    strlen 函数用于获取字符串长度,它返回字符串中不包含 null 终止符的字符数。用法:strlen(str),其中 str 是要确定其长度的字符串。 C 语言中的 strlen ...
    99+
    2024-05-08
    c语言 len函数
  • c语言中strstr函数的用法
    strstr() 函数可搜索字符串中的子字符串,返回第一个匹配子字符串的指针或 null(未找到)。用法步骤如下:1. 从字符串开头搜索;2. 逐个字符比较,找到匹配项或到达字符串结尾;...
    99+
    2024-04-29
    c语言
  • c语言中bool函数的用法
    c 语言中,bool 函数是一种布尔函数,返回 true 或 false 值。其语法为:bool 函数名(参数列表),可接受任意数据类型参数,根据参数值计算条件,返回 true(真)或 ...
    99+
    2024-05-09
    c语言
  • c语言中string函数用法
    string 函数库提供了操作字符串的函数,包括:字符串比较函数(strcmp()、strncmp()、strcasecmp())字符串复制函数(strcpy()、strncpy())字...
    99+
    2024-04-29
    c语言 数据格式化
  • C语言库函数中qsort()的用法
    目录(一)void*  的指针类型是什么?(二)void qsort(void*, size_t, size_t, int ( * )(const void * ,  const v...
    99+
    2024-04-02
  • C语言中函数的介绍及用法
    本篇内容介绍了“C语言中函数的介绍及用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录函数定义库函数定义介绍Example 1 strc...
    99+
    2023-06-20
  • python中getcwd函数如何使用
    在Python中,可以使用`os`模块中的`getcwd()`函数来获取当前工作目录。`getcwd()`函数不需要任何参数。示例如...
    99+
    2023-10-09
    python
  • c语言中fun函数用法举例
    c语言中fun函数是计算双曲正切的函数,用法为:传入要计算的弧度角x。返回该角度的双曲正切值。例如,计算角度1.23弧度的双曲正切值,返回1.32。 C语言中fun函数用法举例 fun...
    99+
    2024-05-10
    c语言
  • C语言浅析函数的用法
    目录问题引入函数C语言中函数的语法形式问题例子函数的调用过程函数声明变量声明数组声明问题引入 有时候,我们经常需要在一个程序中,对一个数组进行 键盘输入,打印数组元素值。 有些代码块...
    99+
    2024-04-02
  • C语言中power函数的用法是什么
    在C语言中,power函数用于计算一个数的幂。函数原型为:```cdouble pow(double x, double y);``...
    99+
    2023-10-12
    C语言
  • c语言中sub函数的用法有哪些
    在C语言中,sub函数并不是C语言的标准库函数,但可以根据具体的程序需求自定义sub函数。以下是一些sub函数的用法示例:1. 替换...
    99+
    2023-08-08
    c语言 sub
  • c语言中fopen函数的用法是什么
    fopen函数是C语言中用于打开文件的函数。其使用方法如下:```cFILE *fopen(const char *filename...
    99+
    2023-09-12
    C语言
  • c语言中prime函数的用法是什么
    在C语言中,prime函数的用法是判断一个数是否为素数(质数)。素数是指除了1和它本身之外没有其他因子的正整数。例如,2、3、5、7...
    99+
    2023-09-27
    c语言
  • c语言中flag函数的用法是什么
    在C语言中,通常情况下,flag函数是一个自定义的函数,用于设置一个标志位(flag)来表示某个条件或状态。flag函数的用法可以根...
    99+
    2024-03-04
    c语言
  • c语言中main函数的用法是什么
    在C语言中,main函数是程序的入口点,是程序执行时的起始函数。主函数main是程序中的一个特殊函数,程序在运行时首先调用main函...
    99+
    2024-04-02
  • C语言中strtol函数的用法是什么
    这篇文章主要讲解了“C语言中strtol函数的用法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C语言中strtol函数的用法是什么”吧!strtol 函数用法strtol是一个C语言...
    99+
    2023-06-20
  • C语言中getchar()函数的用法小结
    目录前言:ASCII码1.getchar的作用2.先来看一段代码3.缓冲区4.再来看一个关于getchar()的例子,代码如下5.当输入的数据有空格时前言:ASCII码 A...
    99+
    2022-11-13
    C语言getchar()函数 C语言getchar()函数用法
  • c语言中sizeof函数的作用
    sizeof() 函数在 c 语言中用于确定变量、数据类型或表达式的内存大小,以字节为单位。其用法如下:size_t sizeof(const type-name | expressio...
    99+
    2024-05-08
    c语言
  • c语言中fun函数的作用
    c 语言中 fun 函数的作用取决于程序员的定义。常见的作用包括:封装代码、实现特定任务、模块化和代码重用。例如,fun 函数可以计算两个数之和。 C 语言中 fun 函数的作用 fu...
    99+
    2024-05-10
    c语言 标准库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作