| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 492 人关注过本帖
标题:C语言的疑惑
只看楼主 加入收藏
chenxy3133
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-23
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:4 
C语言的疑惑
程序代码:
下面是关于做一个简单copy的代码,将参数一文件的内容复制到参数二文件上,代码一能够成功做实现,但代码二就不可以,参数一的内容怎么都复制不了到参数二上,不知哪里出了问题,能否给小弟指出,谢谢

代码一:

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>

char *myname;

int main(int argc, char **argv)
{
    int fda, fdd, wcount, rcount;
    char *wfile,*rfile;
    char buffer[BUFSIZ];
    myname = argv[0];
    if( argc < 3 ) {
        fprintf(stderr, "%s: not enough parameters \n",myname);
    }

    rfile = argv[1];
    wfile = argv[2];
   
    

    fda = open(rfile, O_RDONLY);
    rcount = read(fda, buffer, sizeof(buffer));

    fdd = open(wfile, O_RDWR|O_CREAT, 0666);
    wcount = write(fdd, buffer,rcount);
    if (wcount != rcount) {
        fprintf(stderr, "%s, %s: write err :%s\n",
            myname, wfile, strerror(errno));
    }
    (void)close(fda);
    (void)close(fdd);
    return (0);
}





代码二:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <errno.h>
#include <string.h>

char *myname;

int main(int argc, char **argv)
{
    int fda, fdd, wcount, rcount;
    char *wfile,*rfile;
    char buffer[BUFSIZ];

      if( argc < 3 ) {
        fprintf(stderr, "%s: not enough parameters \n",myname);
    }


    myname = argv[0];
    rfile = argv[1];
    wfile = argv[2];
    

    if(fda = open(rfile, O_RDONLY) < 0) {
        fprintf(stderr, "%s: %s: cannot open for reading:%s\n",
                myname, rfile, strerror(errno));
        return 1;
    }
    rcount = read(fda, buffer, sizeof(buffer));

    if(fdd = open(wfile, O_RDWR|O_CREAT, 0666) < 0) {
        fprintf(stderr, "%s, %s: open fiel err :%s\n",
                myname, wfile,strerror(errno));
        return 1;   
    }
    wcount = write(fdd, buffer,rcount);
    if (wcount != rcount) {
        fprintf(stderr, "%s, %s: write err :%s\n",
            myname, wfile, strerror(errno));
    }
    (void)close(fda);
    (void)close(fdd);
    return (0);
}

搜索更多相关主题的帖子: C语言 成功 
2011-03-03 22:55
刘定邦
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:687
专家分:1570
注 册:2010-9-21
收藏
得分:10 
不懂。。
2011-03-03 23:11
chenxy3133
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-23
收藏
得分:0 
回复 2楼 刘定邦
不好意思,请问我哪里说得不清楚吗?
2011-03-03 23:17
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:10 
回复 楼主 chenxy3133
这是那个“fdd”的问题! 这样直接使用是不行的!

★★★★★为人民服务★★★★★
2011-03-04 07:52
chenxy3133
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-23
收藏
得分:0 
回复 4楼 cnfarer
但代码一怎么可以?
2011-03-04 13:06
快速回复:C语言的疑惑
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022302 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved