| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 826 人关注过本帖
标题:到底哪里出了问题 ,运行时程序会崩溃掉
只看楼主 加入收藏
super_lz
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2017-7-12
结帖率:90%
收藏
已结贴  问题点数:1 回复次数:2 
到底哪里出了问题 ,运行时程序会崩溃掉
#include<stdio.h>
#include<stdlib.h>
void main()
{
    FILE *in,*out;
    char ch,infile[10],outfile[10];
    printf("输入一个读入文件的名字:");
    scanf("%s",infile);
    if(in = fopen(infile,"r") == NULL)                //打开输入文件
    {
        printf("Cannot open this file!\n");
        exit(0);
    }
    printf("输入一个输出文件的名字:");
    scanf("%s",outfile);
        
    if(out = fopen(outfile,"w") == NULL)
    {
        printf("Cannot open this file!\n ");
        exit(0);
    }
    while(!feof(in))                 //如果未遇到输入文件的结束标志
    {
        ch = fgetc(in);
        fputc(ch,out);
        putchar(ch);
    }
    putchar(10);                     //显示完全部字符后换行
    fclose(in);
    fclose(out);
}
搜索更多相关主题的帖子: 崩溃 out printf 输入 文件 
2017-09-21 22:22
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:1 
注意文件名字串长
2017-09-21 22:27
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
楼主得先告诉别人你哪里觉得错了,免得别人所答非汝所问

#include<stdio.h> 中间没加空格,符合C语法,但据我的经验,没有哪个公司的代码检查器能让此代码通过

void main() 按标准应该是 int main( void ) 或 int main( int argc, char* argv[] ) 或其等价形式

scanf("%s",infile); infile只有10个char,不考虑溢出的问题?

if(in = fopen(infile,"r") == NULL) 将 fopen(infile,"r") == NULL 这个_Bool类型赋值给 FILE* 类型,就看不懂欲何为了

while(!feof(in))
{
    ch = fgetc(in); // !feof 不等于就有字符可读取,这种经典的错误代码看看就行了,何必特意写出来把玩

putchar(10); 我不知道为什么要将'\n'写成10,对于变态,我敬而远之
2017-09-22 08:21
快速回复:到底哪里出了问题 ,运行时程序会崩溃掉
数据加载中...
 
   



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

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