fputs (文本行输入/写)
- str 指向要输入的字符串
- stream 指向要存放字符串的文件
cs
#include <stdio.h>
int main()
{
FILE* pf = fopen("test.txt", "w");
//如果打开失败,返回空指针NULL
if (pf == NULL)
{
perror("fopen");
return 1;
}
//写操作
fputs("hello world\n", pf);
fputs("haha\n", pf);
//关闭文件
fclose(pf);
pf = NULL;
return 0;
}
fgets (字符串输入/写)
cs
#include <stdio.h>
int main()
{
FILE* pf = fopen("test.txt", "r");
//如果打开失败,返回空指针NULL
if (pf == NULL)
{
perror("fopen");
return 1;
}
//读操作
char arr[20] = { 0 };
fgets(arr, 5, pf);
printf("%s\n", arr);
fgets(arr, 5, pf);
printf("%s\n", arr);
//关闭文件
fclose(pf);
pf = NULL;
return 0;
}
读取到的字符个数是n-1个+一个'\0',比如上方代码,只会读hell+'\0',然后再继续读4个字符+'\0'
当改成读取20个字符,文件里第一行不够20个字符,只读第一行再只读第二行