字符串的格式化输入与输出
1.gets() 和 puts()
-
gets()
#include <stdio.h> char *gets(char *s); 功能:从标准输入读入字符,并保存到指定的内存空间,直到出现换行符或读到文件结尾为止。 参数:s 字符串首地址 返回值: 成功 读入的字符串 失败 NULL
-
puts()
#include<stdio.h> int puts(const char *s); 功能:标准设备输出s字符串,在输出完成后自动输出一个'\n' 参数:s:字符串首地址 返回值: 成功 非负数 失败 -1
puts()和gets()的使用
#include<stdio.h> int main(){ char ch[100]; gets(ch); printf("ch=%s,",ch); puts(ch); return 0; }
gets(str)与scanf("%s",str)的区别:
1、
gets(str)
允许输入的字符串含有空格2、
scanf("%s",str)
不允许含有空格
scanf("%[^\n]",ch)
接受\n之前所有字符,直到遇到\n,这种情况下允许空格出现
#include<stdio.h>
int main(){
char ch[100];
//gets(ch);直到换行或到达文件尾
scanf("%s",ch);