文件函数输入输出,字符串内有空格,空格后面的字符串就出不来。请指教。。。
题目是:从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件“test”中保存。输入的字符串以“!”结束。
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
int main(void)
{
FILE *pf;
char ch[30],ch1[30];
int i;
printf("请输入一个字符串以 ! 号结束:");
scanf("%s",ch);
strupr(ch);
if( (pf = fopen("test","w"))==NULL )
{
printf("cannot open file\n");
exit(0);
}
fputs(ch,pf); //用这两个函数 fputs(ch1,13,pf); fwrite(ch1,13,1,pf);空格后面的字符都出不来。什么原因请各位前辈高人指点。。。
// fwrite(ch,13,1,pf);
puts(ch); //用 puts(ch); 函数输出也只有到 YANG ,后面的字符串也没出来。
fclose(pf);
if( (pf = fopen("test","r"))==NULL )
{
printf("cannot open file\n");
exit(0);
}
fgets(ch1,13,pf);//用这两个函数 fgets(ch1,13,pf); fread(ch1,13,1,pf);空格后面的字符都出不来。什么原因请各位前辈高人指点。。
// fread(ch1,13,1,pf);
printf("%s\n",ch1);
fclose(pf);
getch();
return 0;
}
/*
程序运行结果:试过别的字符串。如果是连续的字符都能出来。加了空格,空格后面的字符就没了,出不来。求指教。。。
------------------------------------
请输入一个字符串以!号结束。
yang yanyan! >>>>>>>>>>>>>>>>>为什么空格后面的 yanyan! 出不来????
YANG >>>>>>>>>> YANG 后面的字符出不来。。。
------------------------------------
*/