linux之getcwd函数解析,Linux 中C语言getcwd()函数的用法
Linux 中C语言getcwd()函数的用法
先来看该函数的声明:
#include
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
#include
#include
int main(void)
{
char *path = NULL;
path = getcwd(NULL,0);
puts(path);
free(path);
return 0;
}
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
linux之getcwd函数解析,Linux 中C语言getcwd()函数的用法相关推荐
- c语言open函数打开文件方式,Linux中C语言open函数打开或创建文件详细讲解
Linux中C语言open函数打开或创建文件详细讲解 Linux中C语言open函数打开或创建文件详细讲解 头文件: #include #include #include 函数原型: int open ...
- pandas使用replace函数替换dataframe中的值:replace函数使用正则表达式对dataframe中的值进行替换
pandas使用replace函数替换dataframe中的值:replace函数使用正则表达式对dataframe中的值进行替换 目录
- 延时作用是什么意思c语言,单片机中C语言延时函数
原标题:单片机中C语言延时函数 延时程序计算2009-11-02 22:15单片机C语言延时程序用C语言写出来程序非常的简练,它是一种模块化的语言,一种比汇编更高级的语言,但是就是这样一种语言也还是有 ...
- imfilter c语言,opencv中cvFilter2D( ) 函数filter2D()函数与MATLAB中imfilter()函数的差异...
出处: 1:cvFilter2D() 函数为opencv中c语言函数 2:filter2D()函数为opencv中c++函数 3:imfilter()函数为matlab版本函数 计算结果的异同: 2( ...
- python中sort函数源代码_Python中sort和sorted函数代码解析
Python中sort和sorted函数代码解析 本文研究的主要是Python中sort和sorted函数的相关内容,具体如下. 一.sort函数 sort函数是序列的内部函数 函数原型: L.sor ...
- mod函数在计算机中实例,excel MOD函数的使用方法实例 MOD函数的公式语法及使用方法实例...
excel MOD函数的使用方法实例 MOD函数的公式语法及使用方法实例,这个问题是我们很多人都很困惑的一个问题,excel MOD函数的使用方法实例是我们非常常用的一个东西,也是我们工作和学习中必不 ...
- c语言中 允许函数重载么,简述C++语言支持函数重载问题介绍
对于C++语言作为一种欲与C兼容的语言,C++语言保留了一部分过程式语言和特点,foo_int_int这样的名字包含了函数名.函数参数数量及类型信息,C++语言就是靠这种机制来实现函数重载的. 因而它 ...
- python format函数实例_python中强大的format函数实例详解
python中format函数用于字符串的格式化 自python2.6开始,新增了一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串. 语法 它通过{}和:来代替%. 请看下 ...
- php 类static引用函数吗,php中在变量和函数前加static关键字之后的区别
static全局变量和普通全局变量,static局部变量和普通局部变量,static函数与普通函数的区别?下面本文将一一为你解答. (1)全局变量(外部变量)的说明之前再冠以static 就构成了静态 ...
最新文章
- python从入门到实践笔记_Python编程从入门到实践二至七章笔记
- footer bar in SAP Fiori as a service
- matlab求系统根轨迹代码_要想正确画出根轨迹,先搞清楚这8大法则再说!
- 记一次Java AES 加解密 对应C# AES加解密 的一波三折
- 构建插件式的应用程序框架(一)----开篇
- (转)AIX rootvg 镜像创建与磁盘更换
- 前端性能优化(慕课网笔记)-2-渲染优化(浏览器)
- [BUUCTF]REVERSE——相册
- 快手极速版自动评论脚本
- win10计算机策略配置文件,Windows10怎么重置所有本地组策略设置
- H2O学习笔记(一)—— H2O概述
- SCI检索号识别一法:UT-WOS与UT-ISI
- JavaScript 计算地下城堡2资源何时满仓
- UI设计师如何应对面试 哪些细节问题不可忽视
- USACO--Broken Necklace(C语言)beads
- kaggle gradient_descent
- 服务器安全证书认证失败,【证书验证失败】证书验证失败怎么解决、怎么办_佰佰安全网...
- zabbix监控方式(03) - 通过SNMP服务协议监控路由器/交换机
- 因子分析,主成分分析,主因子分析,因子分析函数,极大似然法——数据分析与R语言 Lecture 12
- 汽车衡称重系统作弊疯狂? “一部”解决