文件c語言
A. c語言中文件指的是什麼
文件夾內的所有東西都是文件,不管有沒有後綴。
不是說文件夾內的所有文件代表一個文件,而是說沒一個文件都是一個文件……(真拗口)嘛……反正單個的東西就是一個文件
B. C語言文件
這個程序的流程是:
1.以「二進制寫」方式打開一個文件,如果打開失敗,則拋出異常並結束程序,如果打開成功則將一個已經初始化的double型數組以二進制方式寫入這個文件
2.關閉文件
3.再以「二進制讀」方式打開這個文件,如果打開失敗,則拋出異常並結束程序,如果打開成功則進行下一步
4.要求用戶不斷輸入一個索引值,比如用戶想獲得數組中第i個元素的值,就輸入整數i
5.通過文件指針的移動在文件中找到存儲這個值的位置,並存儲在一個預定義的緩存中,最後列印在屏幕上
6.直到用戶輸入的索引值超出數組下標范圍,循環結束,關閉文件,程序運行結束
具體的代碼注釋見下面:
#include <stdio.h>
#include <stdlib.h>
#define ARSIZE 1000
int main()
{
double numbers[ARSIZE];
double value;
const char * file = "numbers.dat";//定義常字元指針代表將要操作的文件numbers.dat
int i;
long pos;
FILE *iofile;
// 以下語句是將數組numbers[1000]的所有元素初始化為一個double型數值
for(i = 0; i < ARSIZE; i++)
numbers[i] = 100.0 * i + 1.0 / (i + 1);
// 文件指針iofile以「二進制寫」的方式打開一個文件,以下語句判斷是否打開成功,是則程序繼續執行,否則程序異常結束
if ((iofile = fopen(file, "wb")) == NULL)
{
fprintf(stderr, "Could not open %s for output.\n", file);
exit(1);
}
// 將已經初始化的double型數組numbers[1000]以二進制方式寫入文件numbers.dat,fwrite()的四個參數分別為:數據源數組指針,每次寫入數據塊位元組數,寫入數據塊數,文件指針
fwrite(numbers, sizeof (double), ARSIZE, iofile);
//關閉文件指針
fclose(iofile);
//再次打開文件,但方式變為「二進制讀」,同樣判斷是否打開成功
if ((iofile = fopen(file, "rb")) == NULL)
{
fprintf(stderr,
"Could not open %s for random access.\n", file);
exit(1);
}
// 請求用戶從鍵盤輸入一個整數i作為索引
printf("Enter an index in the range 0-%d.\n", ARSIZE - 1);
scanf("%d", &i);
//根據i值搜索整個文件,找到和用戶輸入的索引相對應的數值,循環直到用戶輸入的索引值超出數組下標范圍時結束
while (i >= 0 && i < ARSIZE)
{
pos = (long) i * sizeof(double); // 通過用戶輸入的索引值計算對應數組中的值在文件中的偏移量
fseek(iofile, pos, SEEK_SET); // fseek()函數用於移動文件指針,三個參數分別為:文件指針名,移動的偏移量,移動前文件指針的位置(SEEK_SET為文件頭位置)
fread(&value, sizeof (double), 1, iofile);//fread()函數用於讀入文件中指定位置的內容到緩存,四個參數分別為:存儲讀入內容的緩存首地址,每次讀入塊的位元組數,讀入塊數,文件指針
printf("The value there is %f.\n", value);//value即為讀入的double值,將其輸出
printf("Next index (out of range to quit):\n");
scanf("%d", &i);
}
// finish up
fclose(iofile);//關閉文件
puts("Bye!");
return 0;
}
C. 在c語言中什麼是文件
C語言中FILE 叫文件;
FILE* 叫文件指針;
你是指這個文件嗎?
如果你,要打開一個文件 ,使用fopen()函數來打或者新建;
如你要你寫入文件,使用fwrite()函數來寫入;
如果你要讀取文件,請使用fread()函數來讀取;
C語言中的文件真是一個好東西啊。
真是太有用了:
比如你我們有一個記錄型的結構體
struct 女人
{
身高,
姓名,
三圍,
頭發,
聯系電話
}
我們可以這個女人結構,使用fwrite()寫到文件中,這樣,我們看到一個漂亮的女人,就可把他保存到電腦,什麼時候想聯系哪個妞,我們就打開程序,
這時,C語言程序就會使用fread()函數讀取這些結構體,從而顯示在電腦上了。。
你就可以選一個喜歡的妞,快點,happy一下吧。
這就是文件,C語言中的文件,就是一個普通的文件。
和你電腦里的文件沒有什麼普通。
C語言中什麼是文件?文件就是文件。英文叫FILE。
D. c語言如何打開文件
你只要把下面代碼的file_path改成你要輸出的文件就可以了。注意,一般window下的文件路徑都是一個反斜杠,但是在file_name的字元串中,所有的反斜杠都寫成兩個反斜杠。比如
E:\abc\WTK\SW\source.txt
你要寫成
E:\\abc\\WTK\\SW\\source.txt
#include <stdio.h>
#include <string.h>
main()
{
FILE *fp;
char ch;
char *file_path = "C:\\test\\myfile.txt";
if((fp=fopen(file_path,"r"))==NULL)
{
printf("\nSorry, Can't open the file! @_@\n");
exit(0);
}
else
{
while((ch=fgetc(fp))!=EOF)
{ printf("%c",ch); }
fclose(fp);
}
getch();
}
是否可以解決您的問題?
E. c語言中文件怎樣調用文件
在文件最前面使用#include可以調用文件。例如
#include
<stdio.h>
/*調用系統stdio.h*/
#include
"test.h"
/*調用用戶自定義文件test.h*/
被調用的文件多是.h文件,即頭文件。當然也可以是.c文件,即c語言源文件,但一般不推薦使用這種方式。
F. C語言 文件
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
unsigned long num = 0; char name[32]=""; short score = 0; int i = 0;
FILE * f = fopen("7_2.txt", "w");
if (!f) {
printf("文件無法打開\n");
return 0;
}
printf("請從鍵盤輸入5個同學的學號、姓名和數學成績:");
for(i = 0; i < 5; i++) {
scanf("%d %s %d", &num, name, &score);
fprintf(f, "%d %s %d\n", num, name, &score);
}
fclose(f);
printf("數據已保存。現在從文件中讀取並輸出到屏幕上:\n");
f = fopen("7_2.txt", "r");
for(i = 0; i < 5; i++) {
fscanf(f, "%d %s %d", &num, name, &score);
printf("%d %s %d\n", num, name, &score);
}
fclose(f);
return 0;
}
G. c語言怎麼創建一個txt文件
c語言創建txt文件的步驟如下:
1、打開C-Free5.0新建一個空白頁面,然後將C語言的基礎格式寫完,注意格式縮進。
H. c語言中文件
估計是你程序中其他地方存在邏輯錯誤.給你一個我寫的例子:
#include<stdio.h>
#define N 5
struct student
{
int num;
char name[20];
int course[3];
float ave;
};
void main(void)
{
int i,j;
FILE *fp;
struct student st[N];
for(i=0;i<N;i++)
{
printf("student %d:\n",i+1);
printf("num:");
scanf("%d",&st[i].num);
printf("name:");
scanf("%s",st[i].name);
st[i].ave=0.0;
for(j=0;j<3;j++)
{
printf("course %d:",j+1);
scanf("%d",&(st[i].course[j]));
st[i].ave+=st[i].course[j];
}
st[i].ave/=3;
}
for(i=0;i<5;i++)
{
printf("student %d:\n",i+1);
printf("num:");
printf("%d\n",st[i].num);
printf("name:");
printf("%s\n",st[i].name);
for(j=0;j<3;j++)
{
printf("course %d:",j+1);
printf("%d\n",(st[i].course[j]));
}
printf("ave=%f\n",st[i].ave);
}
if((fp=fopen("stud","wb"))==NULL)
{
printf("FILE OPEN ERROR!\n");
exit(0);
}
for(i=0;i<5;i++)
{
if(fwrite(&st[i],sizeof(struct student),1,fp)!=1)
{
printf("FILE WRITE ERROR!");
exit(0);
}
}
fclose(fp);
}
I. C語言中文件的概念是什麼
頭文件是你程序中需要用到東西,如需要某個數學函數,
則必須包括數學相關頭文件,如math.h,當然,也可以自己寫函數,只要你不怕麻煩!
頭文件是你程序中需要用到東西,如需要某個數學函數,
則必須包括數學相關頭文件,如math.h,當然,也可以自己寫函數,只要你不怕麻煩! 頭文件就是在你所編制的程序運行時要用到的文件!
如 math.h 和 stdio.h
頭文件就是在你所編制的程序運行時要用到的文件!
如 math.h 和 stdio.h
頭文件就是在你所編制的程序運行時要用到的文件!
如 math.h 和 stdio.h
J. c語言如何用文件存儲數據
具體操作步驟如下:
1、首先,創建一個新文件夾,在該文件夾中創建一個文檔,如下圖所示,然後進入下一步。