fscanf()是C语言中的一个函数,用于从文件中读取格式化的输入。它可以根据指定的格式字符串将文件中的数据解析并存储到指定的变量中。
%s和%c是fscanf()函数中的两个格式化字符,用于读取字符串和字符。
%s用于读取一个字符串,它会从文件中读取连续的非空白字符,直到遇到空白字符(空格、制表符、换行符等)为止。读取到的字符串会自动添加一个结束符'\0',并存储到指定的字符数组中。
%c用于读取一个字符,它会从文件中读取下一个字符,并存储到指定的字符变量中。它可以读取任何字符,包括空白字符。
两者的主要差异在于%s会读取连续的非空白字符作为一个字符串,而%c只会读取下一个字符。另外,%s会自动添加字符串结束符'\0',而%c不会。
下面是一个示例代码,演示了如何使用fscanf()函数读取字符串和字符:
#include <stdio.h>
int main() {
FILE *file = fopen("example.txt", "r");
char str[100];
char ch;
// 读取一个字符串
fscanf(file, "%s", str);
printf("String: %s\n", str);
// 读取一个字符
fscanf(file, " %c", &ch);
printf("Character: %c\n", ch);
fclose(file);
return 0;
}
在上面的代码中,我们打开了一个名为"example.txt"的文件,并使用fscanf()函数读取了一个字符串和一个字符。注意,在读取字符之前,我们在格式化字符串中添加了一个空格,这是为了跳过可能存在的空白字符。
对于fscanf()函数的更多详细信息,以及其他相关的C语言函数和概念,您可以参考腾讯云的文档和教程:
领取专属 10元无门槛券
手把手带您无忧上云