linux 编程问题 fcntl函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 编程问题 fcntl函数相关的知识,希望对你有一定的参考价值。

flags=fcntl(fd, F_GETFL,DUMMY);
flags&=fcntl(fd, F_SETFL,flags);

这两句话什么意思 教材上从源程序截取下来的 怀疑错了 看不懂
哪位高手给我解释一下 万分感谢……
我想问的是这两句语言的具体意思 不是fcntl 函数的用法 谢谢

fcntl的返回值与命令有关。如果出错,所有命令都返回-1,如果成功则返回某个其他值。
下列三个命令有特定返回值:F_DUPFD,F_GETFD,F_GETFL以及F_GETOWN。第一个返回新的文件描述符,第二个返回相应标志,最后一个返回一个正的进程ID或负的进程组ID。

F_GETFL 取得fd的文件状态标志,如同下面的描述一样(arg被忽略)

F_SETFL 设置给arg描述符状态标志,可以更改的几个标志是: O_APPEND, O_NONBLOCK,O_SYNC和O_ASYNC

http://www.91linux.com/html/article/program/cpp/20090207/15707.html
参考技术A 虽然不懂linux编程,但是没看出来有问题,函数调用正确的啊
dummy=1;
a=0;
a=1+dummy;
a=a+(1+a); //a=2+3=5
参考技术B 把出错信息贴出来本回答被提问者采纳

以上是关于linux 编程问题 fcntl函数的主要内容,如果未能解决你的问题,请参考以下文章

Linux下的串口编程

Linux系统编程8_文件I/O

网络编程一些常见问题总结

UNIX环境高级编程APUE练习3.2-不用fcntl实现dup2的功能

Linux系统编程(文件)———文件打开/创建写入读取

Linux系统编程(文件)———文件打开/创建写入读取