在C语言中,对于字符和字符串的处理非常多,如何正确的读取和输入字符和字符串是非常使用的。
1.getchar和putchar
getchar是读取输入的一个字符,而putchar是将输入的一个字符输出到屏幕上。
#include<stdio.h>
#include<stdlib.h>
int main()
{
char ch;
printf("请输入一个字符\n");
ch=getchar();
if(ch!=EOF)
{
putchar(ch);
}
return 0;
}
如果输入了多个字符,则只是读取第一个字符,而将多余的字符保存在缓冲区里,直到再次使用getchar或者scanf函数读取。
2.gets和puts
如果想同时输入和读取多个字符,就要到用到gets和puts函数
#include<stdio.h>
#include<stdlib.h>
int main()
{
char str[30];
puts("请输入一个字符串\n");
gets(str);
puts("输出的字符串是:\n");
puts(str);
return 0;
}
3.fgetc和fputc
在文件的读取和输入字符中,就要用到fgetc和fputc
fgetc(fp),fputc(ch,fp)
fgetc函数的功能是从指定的文件中读一个字符, ch=fgetc(fp);其意义是从打开的文件fp中读取一个字符并送入ch中。
fputc函数的功能是把一个字符写入指定的文件中,函数调用的形式为:
fputc(字符量,文件指针); 其中,待写入的字符量可以是字符常量或变量,例如:fputc('a',fp);其意义是把字符a写入fp所指向的文件中。
4.fcanf和fprintf
fprintf()实现想指定的文件或者流中输出数据,实现打印功能。作用是格式化输出到一个流/文件中。
fscanf()实现 从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束
#include<stdio.h>
#include<stdlib.h>
const char file_name[4096]="1.txt";
int main()
{
FILE *fp;
char a[200]="happy world";
fp=fopen("1.txt","w");
if(fp==NULL)
{
printf("未找到制定文件\n");
exit(0);
}
for(int i=0;a[i]!='\0';i++)
{
fprintf(fp,"%c",a[i]);
}
fclose(fp);
return 0;
}