scanf&printf
int
scanf
(
const
char
* restrict format,...); 标准化输入函数,读取字符串的时候,遇到空格(换行,TAB)就停止,所以只能输入一个单词
gets&puts
gets(char* buffer);遇到回车的时候才结束输入,同时抛弃回车符,但是加一个‘\0’,并形成字符串,但是gets有可能出现越界问题,不能检测输入字符串是否超过buffer的内存长度
fgets&fputs
fgets(char*buffer,int len,FILE *stream);解决gets的越界问题,len控制输入字符的长度,同时fgets的字符串带回车符,这一点和gets不一样
getchar&putchar
从缓冲区一次只接受一个字符,所有字符都可以接受