文件名的大小写也影响文件读写?
#include <stdio.h>
struct student
{
char name[20];
float cj[6];
float ave;
};
static char *project[] = {"Chinese","Mathematics",
"English","Physics",
"Chemistry","Biology"};
void creat() /*新建用户*/
{struct student stu;
int i;
FILE *p;
clrscr();
printf("Tell me your name:");
scanf("%s",stu.name);
p = fopen("DB.txt","a");/*让我不明白的是,这里明明是大写啊*/
for(i = 0;i < 2;i++)
{
printf("%s:",project[i]);
scanf("%f",(stu.cj + i));
}
for(;i < 6;i++)
{
printf("%s:",project[i]);
scanf("%f",(stu.cj + i));
}
fwrite(&stu,sizeof(stu),1,p);
fclose(p);
}
void get()
{
FILE *fp;
struct student me;
int i;
fp = fopen("db.txt","r");
fread(&me,sizeof(me),1,fp);
printf("%s",me.name);
for(i = 0;i < 6;i++)
printf("%f\n",me.cj[i]);
}
main()
{
creat();
get();
getch();
}
你在相应目录建立一个DB.txt试试,然后在建一个db.txt试试。
测试环境:WinXP+TC2
问题点数:0、回复次数:6Top
1 楼williamVII(spread)回复于 2003-11-02 12:25:52 得分 0
你在相应目录建立一个DB.txt试试,然后在建一个db.txt试试
不行,WINDOWS会阻止你建立.
文件名是大小写不敏感的.Top
2 楼gkisme(Fighting Dreamer)回复于 2003-11-02 12:52:22 得分 0
你用的是什么系统?WinXP中支持全大写的文件名的。
你说文件名是大小写不敏感的.
可是你试过了么,结果不一样的。Top
3 楼williamVII(spread)回复于 2003-11-03 13:52:31 得分 0
WINDOWS2000.
我没说不可以全大写呀.
晕...
楼主难道以为系统可以根据大小写来区别文件名?
Top
4 楼shenbinwangyy(求学弟)回复于 2003-11-03 16:40:13 得分 0
根本就是同一个文件,当然读写同一个文件啦Top
5 楼gkisme(Fighting Dreamer)回复于 2003-11-04 14:43:19 得分 0
没有调查就没有发言权,你们按照我说的试过了没有?Top
6 楼williamVII(spread)回复于 2003-11-04 15:29:45 得分 0
不明白楼主到底想说什么.
我在WIN2000和XP上都试过.
具体步骤:
1.新建一个文件夹.名为:DB;
2.再在同一目录下新建一个.为:db
结果:一旦输入结束.WINDOWS就会跳出警告.
一般文件也一样,我倒是怀疑楼主自己有没有试过.Top




