C语言symlink()函数:建立文件符号连接头文件:

#include

定义函数:

int symlink(const char * oldpath, const char * newpath);

函数说明:symlink()以参数newpath 指定的名称来建立一个新的连接(符号连接)到参数oldpath 所指定的已存在文件. 参数oldpath 指定的文件不一定要存在, 如果参数newpath 指定的名称为一已存在的文件则不会建立连接.

返回值:成功则返回0, 失败返回-1, 错误原因存于errno.

错误代码:

1、EPERM 参数oldpath 与newpath 所指的文件系统不支持符号连接。

2、EROFS 欲测试写入权限的文件存在于只读文件系统内。

3、EFAULT 参数oldpath 或newpath 指针超出可存取内存空间。

4、ENAMETOOLONG 参数oldpath 或newpath 太长。

5、ENOMEM 核心内存不足。

6、EEXIST 参数newpath 所指的文件名已存在。

7、EMLINK 参数oldpath 所指的文件已达到最大连接数目。

8、ELOOP 参数pathname 有过多符号连接问题。

9、ENOSPC 文件系统的剩余空间不足。

10、EIO I/O 存取错误。

范例

#include

main()

{

symlink("/etc/passwd", "pass");

}

C语言readlink()函数:取得符号连接所指的文件头文件:

#include

定义函数:

int readlink(const char * path, char * buf, size_t bufsiz);

函数说明:readlink()会将参数path 的符号连接内容存到参数buf 所指的内存空间, 返回的内容不是以NULL作字符串结尾, 但会将字符串的字符数返回. 若参数bufsiz 小于符号连接的内容长度, 过长的内容会被截断.

返回值:执行成功则传符号连接所指的文件路径字符串, 失败则返回-1, 错误代码存于errno.

错误代码:

1、EACCESS 取文件时被拒绝, 权限不够。

2、EINVAL 参数bufsiz 为负数。

3、EIO I/O 存取错误。

4、ELOOP 欲打开的文件有过多符号连接问题。

5、ENAMETOOLONG 参数path 的路径名称太长。

6、ENOENT 参数path 所指定的文件不存在。

7、ENOMEM 核心内存不足。

8、ENOTDIR 参数path 路径中的目录存在但却非真正的目录。

linux symlink 函数,详解C语言中symlink()函数和readlink()函数的使用相关推荐

  1. linux中 fopen函数,详解C语言中的fopen()函数和fdopen()函数

    C语言fopen()函数:打开一个文件并返回文件指针头文件: #include fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * ...

  2. php seekdir,C++_详解C语言中telldir()函数和seekdir()函数的用法,C语言telldir()函数:取得目录流 - phpStudy...

    详解C语言中telldir()函数和seekdir()函数的用法 C语言telldir()函数:取得目录流的读取位置头文件: #include 定义函数: off_t telldir(DIR *dir ...

  3. c语言while函数作用,详解C语言中的while语句

    什么是C语言的while语句?它的作用是什么呢?估计很多初学者对此都是一知半解.下面课课家笔者就为大家详细解释C语言中的while语句的含义和作用. 首先笔者先给大家介绍C语言中的共有的三大常用的程序 ...

  4. c语言char数组和short数组的区别,详解C语言中Char型指针数组与字符数组的区别

    详解C语言中Char型指针数组与字符数组的区别 详解C语言中Char型指针数组与字符数组的区别 1.char 类型的指针数组:每个元素都指向一个字符串,指向可以改变 char *name[3] = { ...

  5. c语言中的fscanf是啥意思,详解C语言中fgets和fscanf区别

    fscanf函数是C语言的文件格式读取函数的方法之一,它使用空格.制表符和回车来分割不同的单词,这样可以让我们使用起来更方便,下面就让爱站技术频道小编带你来学习详解C语言中fgets和fscanf区别 ...

  6. C语言中定义常量的关键字是什么,C++_详解C语言中const关键字的用法,关键字const用来定义常量,如 - phpStudy...

    详解C语言中const关键字的用法 关键字const用来定义常量,如果一个变量被const修饰,那么它的值就不能再被改变,我想一定有人有这样的疑问,C语言中不是有#define吗,干嘛还要用const ...

  7. pythonpandas函数详解_对pandas中Series的map函数详解

    Series的map方法可以接受一个函数或含有映射关系的字典型对象. 使用map是一种实现元素级转换以及其他数据清理工作的便捷方式. (DataFrame中对应的是applymap()函数,当然Dat ...

  8. c语言rand函数的作用,详解C语言中rand函数的使用

    前言 我们在编程实现算法的过程中,往往需要使用到随机数.由于计算机是一台以逻辑为基础的机器,没法做到真正的随机(大概量子计算机可以?).所以计算机生成的是伪随机数,供我们使用. 我们使用C语言的ran ...

  9. 详解c语言中的qsort函数(有图)

    目录 目录 一.qsort函数是什么 1.自定义冒泡函数时遇到的问题 2.qsort函数的作用 (1)int整形数组排序(2)浮点型数组排序(3)字符数组排序 (4)结构体排序 二.qsort函数的原 ...

最新文章

  1. pre是什么意思css,Precss
  2. Math.Round()——面试题小结
  3. Java基础小常识-继承-(10)
  4. 低版本Eclipse如何快速设置黑色主题
  5. ScrollView-图片的放大缩小
  6. JAVA创建会话的方法_javaweb学习——会话技术(二)
  7. CS231n李飞飞计算机视觉 卷积神经网络详解上
  8. Geolocation API
  9. PyQt5中打开网址方法
  10. matlab的方法定义变量,Matlab定义变量的操作步骤
  11. python抢课_一个用python实现的东方时尚(驾校)抢课程序
  12. 隐藏app界面和桌面应用程序图标的方法
  13. 睡眠伤害计算机硬件吗,电脑长时间睡眠、不关机对电脑有伤害吗?
  14. BZOJ3786 星际探索
  15. vue和layui哪个更好用_指纹锁哪个牌子更好用?
  16. ROS综合学习记录(一)---cmd_vel转换为阿克曼模型的速度变换
  17. 前端下载图片的N种方法
  18. android自定义起止时间的时间刻度尺,Android 自定义 View 刻度尺
  19. 使用 Shell 脚本自动化 Linux 系统维护任务
  20. 使用js实现一个复利计算器的HTML网页

热门文章

  1. 仿蜻蜓FM专辑页面滑动特效
  2. 实验2:结构建型模式应用实验(1)
  3. 计算机英语 自我介绍,计算机专业英文自我介绍
  4. Windows10 Hyper-v 虚拟机安装点心云,实现闲置宽带共享。
  5. selenium自动化图片不加载设置
  6. 基于Qt ffmpeg opengl开发跨平台安卓实时投屏软件
  7. 创业公司如何分配股权?
  8. PHP常说的SAPI是什么
  9. Livid : 在 26 岁时写给 18 岁的自己
  10. java计算机毕业设计临大新生入学指导系统源代码+数据库+系统+lw文档