Ⅰ c语言 读取文件失败
读取文件失败,很有可能是代码问题,参考代码如下,注意注释:
#include "stdio.h"
#include <stdlib.h>
int main(int argc, char* argv[])
{
FILE *fp;
int i,t,sum=0; //sum需要初始化为0
fp=fopen("d:\\1.txt","r"); //打开文件
if(!fp)
{
printf("打开文件失败\n");//确认文件打开
exit(1);
}
for(i=0;i<3;i++)
{
fscanf(fp,"%d",&t); //这里使用的应该是fscanf,而不是scanf
sum=sum+t;
}
fclose(fp);
printf("%d",sum); //这里应该这么写,先前的printf(sum); 写法是错的
return 0;
Ⅱ c语言中无法打开文件
是不是放在同一个文件夹了。
然后试试绝对路径。
eg.
/home/user/c/a.txt
Ⅲ c语言fopen函数打不开文件
1、新建一个fopen函数的使用项目。
Ⅳ c语言不能打开文件,路径设置对了
1.如果文件不在当前文件夹当中,需要输入绝对路径。或者,使用system("CD")指令更改当前路径,在目标文件路径下打开文件。
2.对于程序来说,不管后缀名如何,文件分为两种类型:文本文件和二进制文件。
C语言里有一系列文件操作函数。区分文本和二进制文件,需要在打开文件时设置不同的控制符mode的变量即可。
3.fopen的函数原型:FILE * fopen(const char * path,const char * mode);
fopen函数的第一个参数是文件路径,第二个参数是打开方式,有以下几种方式:
r 以只读方式打开文件,该文件必须存在。
r+ 以可读写方式打开文件,该文件必须存在。
rb+ 读写打开一个二进制文件,允许读数据。
rw+ 读写打开一个文本文件,允许读和写。
w 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+ 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
a+ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)
wb 只写打开或新建一个二进制文件;只允许写数据。
wb+ 读写打开或建立一个二进制文件,允许读和写。
wt+ 读写打开或着建立一个文本文件;允许读写。
at+ 读写打开一个文本文件,允许读或在文本末追加数据。
ab+ 读写打开一个二进制文件,允许读或在文件末追加数据。
上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。
Ⅳ 在编译C语言时,为什么无法打开包含文件' GRAPHICS.H '
1、graphics.h是win-tc自带的函数库——用来图形开发,其他编译器可能不包含这个函数库,特别是VC(里面是比较正统的C函数库),肯定没有。如果一定要用VC或者你的编译器编译——那么应该把win-tc里面的graphic.h的函数库弄到当前编译器文件夹下。
2、graphics.h是TC下的,也就是Turbo C,而且要在纯DOS下才能运行,要在Windows 下面的话,这个是肯定用不了的。如果要编写图形化,用graphics 以后,程序的可移植性会变差,也就意味着只能在纯DOS下才能运行这个的程序,在Windows 或Linux /Unix 下是无法编译通过的,建议不要用。
Ⅵ C语言文件为什么老提示无法打开啊!谁能告诉下谢谢!
C语言代码文件有2中格式:
头文件 .h
源文件 .c
如果提示无法打开,就说明你没有装开发工具,比如 vitrual stdio系列的IDE.
实际上.h .c文件格式的,使用记事本就可以打开的.
Ⅶ C语言无法打开文件!
你是带参数的main函数吧?
试一下扩大数组.吧后追带上!
而且xp的cmd
和98的不一样!
98的话 文件名一定要用8.3格式!
xp 可以长文件名!
Ⅷ C语言无法打开文件(急!)
代码在VC6环境下测试通过。不是代码问题。输入也没有问题,只要一个斜杠就可以。
检查一下是否有其他程序也在占用该文件,可以把除了编译器以外的所有窗口都关掉再运行。
再试试把fp=fopen(filename,"w")的w改成r试试。
Ⅸ C语言,不能读取文件中的内容
你要打开读的文件必须已存在,已有正确内容, b 是2进制文件噢。
// struct USER {..........} 已定义
void main(){
FILE *fp;
char filename[]="my.dat"; // 如果文件名是my.dat
struct USER user; // 如果已定义结构USER, 这里声明user
if((fp=fopen(filename,"rb"))==NULL){printf("open %s error\n",filename); exit(0);}
fread(&user,sizeof(user),1,fp);
printf("password=%s",user.password);
....