當前位置:首頁 » 編程語言 » c語言文件無法打開
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言文件無法打開

發布時間: 2022-01-28 22:57:05

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中格式:

  1. 頭文件 .h

  2. 源文件 .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);
....