c語言可以讀取檔案內容 自動建立變數嗎?

時間 2025-03-20 15:30:10

1樓:網友

首先肯定可以做到,而且現實中有實際例子,即編譯器。編譯器讀取的就是這樣的文字,並且能根據不同型別的定義建立不同的變數,只不過它最後把這些變數和函式做成了可執行檔案,而你則是要求把它們做成資料結構。

本質的要求是資料的序列化和反序列化。

c語言可以讀取檔案內容 來建立變數嗎?

2樓:唯安安

c語言可以利用fscanf和sscanf兩個函式。

讀取txt檔案內容並寫入到變數裡面。

scanf:可以自動識別換行符和空格符。

1)fscanf可以讀取txt檔案裡面同一行多個變數和不同行的變數都同時讀取到多個變數裡面。

2)sscanf是先讀取到乙個快取裡面,然後再賦值到各個變數中,是逐行讀取的,這種用法適用於多維變數。

1. c語言中,如何讀取檔案中的資料?

fscanf掃瞄資料到系統緩衝區中 在掃瞄的時候做一下計數 然後在從緩衝區中把資料乙個乙個取出來建立陣列。

2. 如何用c語言從txt檔案中讀取資料 ?

用c語言從txt檔案2113據,可以使用c標準庫檔案自帶5261的檔案介面函式進行操作。一、4102開啟檔案:1653 file*fopen(const char*filename,const char*mode); 因為txt檔案為文字檔案,所以開啟時選擇的mode應為"r"或者"rt".

3樓:匿名使用者

使用include 「進行匯入,在預處理階段會把文字中內容移至include處,這樣就可以直接使用該變數了。

c語言中如何從檔案讀取資料並賦值到變數?

4樓:風若遠去何人留

裡面的文字如果是固定的 那麼可以。

這樣a=11 其它類似。

如果想不考慮文字 那麼可以。

這裡 a b c d e f g分別就是那七個數值。

c語言讀取含檔案中的變數

5樓:黑綠藍

這樣是讀不了的,就像你用cin讀數到乙個int型變數中,結果你輸入字母按回車,cin會讀取失敗。

6樓:滄海雄風

int a=1;int b=3;

int c[3][3] = ,要像上面的可以。

但是從文字讀取出來時 a*b 明明是字元啊 賦值給a[0][1]不成功。

7樓:網友

ab需要判斷。。單獨處理。。

c語言如何讀取c:\a.txt中的資料,並賦值到變數?

8樓:敏元偉從筠

我來給出正解吧:

a)a=a+7

是賦值語句。

正確b)a=7+b+c,a++

這是乙個賦值運算子和逗號運算子等組成的語句,因為賦值運算子的優先順序高於逗號運算子,所以相當於(a=7+b+c),a++

而不是a=(7+b+c,a++)

c)int(

不能出現小數,非法。

d)a=a+7=c+b

賦值運算子的結合性是自右向左的,所以相當於兩個語句先a+7=c+b

再a=a+7

a+7不是個變數,不能作為被賦值的物件。

所以答案是a、b

9樓:網友

在讀取資料前,最好知道資料的存放格式,舉例來說:

c:\的內容是。

00001 張小明 53

00002 李嶽 89

.即每行乙個記錄,分別存放:編號、姓名、成績1、成績2、成績3編號是整型的資料,姓名是字串,成績都是浮點數,各個資料之間以空格分割。

#include

void main()

fclose(fp);

if ( n>0 )

for ( i=0;iprintf("%05d %10s % ",number[i],name[i],score[i][0],score[i][1],score[i][2]);

10樓:網友

fopen() fread() fclose()標準方法,還有很多。

11樓:網友

int load(tel t)//函式1:從txt檔案中獲取學生資訊for(i=0;ifclose(fp); /*關閉檔案*/printf("你已經從檔案中正確讀入資料!n"); /*顯示讀入成功*/

return n; /*返回記錄數*/

這是個類似的程式 把資料從txt傳到10個結構體裡面。

c語言我要把乙個資料從檔案裡讀出來放到乙個變數裡去怎麼寫?

12樓:網友

int x;

double a;

file file;

file= fopen("大一上。txt","r");

就是你想要的答案。

c語言中如何使用txt檔案中的資料變數

13樓:網友

使用fopen,fscanf函式可以實現從txt檔案當中讀取內容,進行簡單操作。

的函式原型: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 字元用來告訴函式庫開啟的檔案為二進位檔案,而非純文字檔案。

返回值:檔案順利開啟後,指向該流的檔案指標就會被返回。如果檔案開啟失敗則返回null,並把錯誤**存在errno中。

2.例程:#include

#define f_path "d:\\myfile\\"

char c;

int main()

14樓:網友

首先,開啟檔案:

file fp=fopen("*.txt","rb")if(fp==null)

其次,讀入資料:

不要忘記關閉檔案。

中文輸入輸出的話可以參考,裡面有很多處理寬字符集的函式,使用之前要setlocale(lc_ctype, "")

15樓:網友

從鍵盤輸入時你用的是scanf對吧?

其實從檔案讀也很簡單,用fscanf就可以了,但是fscanf要求你提供乙個檔案描述符,具體是這樣的:

file *fp;

char begin[8],end[8];

int n;

fp=fopen("","r"); //fopen是開啟乙個檔案,假定檔名是,「r」代表唯讀方式開啟。

除了檔案描述符fp,其他都和scanf一樣的有問題追問啊。

c語言中,怎麼從文字中逐行讀取資料並賦值給不同變數

16樓:潮範君

給你簡單寫個框架吧,比如你要讀取的檔名為file *fp;

fp = fopen("","r");

int a;

fscanf(fp,"%d",&a); //這樣就讀取到1個數字了,並賦值給a 你檔案格式就設定為一行1個數字。

fclose(fp);

這是個簡單的例子,你可以借鑑下,祝順利。

如何用C語言迴圈讀取檔案內容,怎麼用C語言讀取 TXT檔案中的字串

迴圈讀取一個檔案的內容。這樣做沒有任何意義,不如把讀取的內容保持在變數當中,節省空間時間。如果非要反覆讀取的話可以使用rewind函式把檔案指標重置。函式名 rewind 功 能 將檔案內部的位置指標重新指向一個流 資料流 檔案 的開頭注意 不是檔案指標而是檔案內部的位置指標,隨著對檔案的讀寫檔案的...

c語言讀取檔案的函式程式解釋,C語言讀取檔案的函式 程式解釋

原來是空連結串列,p1,p2原來是兩個空節點,迴圈裡面p1先申請一塊記憶體塊,得到一個結點,並且這個結點從檔案輸入了資料 然後p2 next p1 就是得到連結串列 head p2 p1 p2 p1,那麼連結串列就是 head 空節點 p2,下一次迴圈,p1又申請了一塊記憶體並得到一個節點,p2 n...

c語言讀取文字檔案,C語言如何讀取txt文字里面的內容?

如果要求就這麼簡單的輸出的話。不知道如下結果如何,希望對你有幫助 include void main c語言如何讀取txt文字里面的內容?1 開啟電腦上要讀取的文字檔案。2 開啟文字後,點選文字左上角的 檔案 按鈕。3 點選 另存為 這樣就會儲存本來的這個文字檔案,生成一個新的c檔案。4 點選 儲存...