关于./a.out passwd之后没有打印出fd的值

关于./a.out passwd之后没有打印出fd的值

1、cp /etc/passwd .这个命令的作用是什么?为什么我按照视频操作./a.out passwd之后,没有输出fd = 3呢?

https://img1.sycdn.imooc.com//climg/64c7ce09099a139508340152.jpg

这是我的代码,为什么没有打印出fd的值呢?

https://img1.sycdn.imooc.com//climg/64c7cedb093c4b6f09230216.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
中年猿叔 2023-08-01 07:13:15
cp /etc/passwd .是把/etc目录下的passwd文件拷贝到当前目录下来
中年猿叔 2023-08-01 07:11:29
自己程序怎么写的呢?是不是在程序中没有输出文件描述符!
  • 提问者 慕5246297 #1

    这是代码,按照课程里写的

    #include <stdio.h>
    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    
    int main(int argc, char *argv[])
    {
    	int fd;
    
    	if(argc != 2)
    		fprintf(stderr,"Usage : <%s> <pathname>\n",argv[0]);
    		return -1;
    	
    	fd = open(argv[1], O_RDONLY);
    	if(fd == -1){
    		perror("open():");
    		return -1;
    	}
    
    	printf("fd = %d\n", fd);
    	return 0;
    }


    2023-08-01 08:52:19
  • 提问者 慕5246297 #2

    已解决,谢谢!

    2023-08-01 09:09:09
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师