| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 508 人关注过本帖
标题:文件操作基础,楞是看不懂。。。。求高手解答。。。
只看楼主 加入收藏
love24114
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:223
专家分:399
注 册:2011-7-11
结帖率:81.48%
收藏
已结贴  问题点数:20 回复次数:7 
文件操作基础,楞是看不懂。。。。求高手解答。。。
#include <stdio.h>

void filecopy(FILE *ifp,FILE *ofp)
{
    int c;
    while ((c =fgetc(ifp)) !=EOF)
    fputc(c,ofp);
}
int main(int argc,int argv[])
{
    FILE *ifp;
    char *name =argv[0];//这个是什么意思?

    if (argc ==1)
    {
        filecopy(stdin,stdout);
        return 0;
    }
    while(*++argv!=NULL)
        if ((ifp = fopen(*argv,"r")) == NULL)
        printf("%s,cant open input file: %s\n",name,*argv);
        else {
            filecopy(ifp,stdout);
            fclose(ifp);
        }
        return 0;
}
不理解怎么获取文件的名字,求解…………
搜索更多相关主题的帖子: include return 
2011-11-07 19:20
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
净抄别人的代码是永远不会进步的。argv[0]就是这个程序自己的名字!

授人以渔,不授人以鱼。
2011-11-07 20:07
thlgood
Rank: 5Rank: 5
等 级:职业侠客
帖 子:281
专家分:381
注 册:2010-9-24
收藏
得分:0 
代码错得离谱!写一个简单的给你吧

[ 本帖最后由 thlgood 于 2011-11-7 20:28 编辑 ]

o(∩∩)Linux & Python 群:187367181
2011-11-07 20:23
编程的乐趣
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:229
专家分:1027
注 册:2011-4-4
收藏
得分:0 
.
2011-11-07 20:26
thlgood
Rank: 5Rank: 5
等 级:职业侠客
帖 子:281
专家分:381
注 册:2010-9-24
收藏
得分:0 
写得不好,仅供参考

程序代码:
#include <stdio.h>

/*argv是main函数的参数的个数
  argv是main函数的参数*/
int main(int argc, char *argv[])
{
        FILE *FilePointer;            //文件指针
        char str[20];
        fgets(str, 19, stdin);        //stdin代表标准输入(通常是指键盘)

        if ((FilePointer = fopen("output.txt", "a")) == NULL)
        {
                printf("打开文件失败!\n");
                return 1;
        }

        if ((fputs(str, FilePointer)) == EOF)
        {
                printf("写入失败!\n");
                return 2;
        }

        close(FilePointer);            //关闭文件

        return 0;
}


[ 本帖最后由 thlgood 于 2011-11-7 20:38 编辑 ]

o(∩∩)Linux & Python 群:187367181
2011-11-07 20:37
love24114
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:223
专家分:399
注 册:2011-7-11
收藏
得分:0 
回复 楼主 love24114
书上的代码,但是怎么把argv[0]弄成文件名字
2011-11-07 20:45
thlgood
Rank: 5Rank: 5
等 级:职业侠客
帖 子:281
专家分:381
注 册:2010-9-24
收藏
得分:20 
回复 6楼 love24114
argv[0]是这个程序的名字,argv[1]、argv[2]....才是程序参数的名字。

你把程序编译了,假设程序名是abc。编译之后打开开始菜单的“运行”,输入cmd,通过cd命令转到程序所在的目录,然后执行:
abc filename.txt
执行之后filename.txt会被赋给argv[1]。

Windows环境我不是很熟悉。这是我提供的办法。

mian函数你写错了,是这样写的:
int main(int argc, char *argv[])

o(∩∩)Linux & Python 群:187367181
2011-11-07 20:59
白云龙
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-11-7
收藏
得分:0 
我是个初学者,在那可以编写啊,学的东西需要实践下啊,各位大侠
2011-11-07 22:28
快速回复:文件操作基础,楞是看不懂。。。。求高手解答。。。
数据加载中...
 
   



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

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