读取字符时:
1) scanf(“%c”, c)读取此时输入缓冲区的第一个字符(包括空白字符Space、Enter、Tab)结束一次输入,不会舍弃最后的回车符(即回车符会残留在缓冲区中);
2) c =getchar() 与scanf(“%c”, c)相同。
读取字符串时:
1) scanf("%s",s)找到输入缓冲区中第一个非空白(Space、Enter、Tab)字符串作为输入传给变量(自动),然后以空白符Space、Enter、Tab结束一次输入(变量末尾自动补‘/0’作为字符串结束),但做为结束的空白符(空格、回车)仍留在输入缓冲区不做删除。
2) gets(s)接受空格,制表符,不接受回车符。以回车符结束输入(空格不结束),会删除最后的回车符(最后的回车符从输入缓冲区去除,此时输入缓冲区的第一个字符为回车的下一个字符),若回车符前无字符,则传给*s的值为‘\0’;
1) scanf(“%c”, c)读取此时输入缓冲区的第一个字符(包括空白字符Space、Enter、Tab)结束一次输入,不会舍弃最后的回车符(即回车符会残留在缓冲区中);
2) c =getchar() 与scanf(“%c”, c)相同。
读取字符串时:
1) scanf("%s",s)找到输入缓冲区中第一个非空白(Space、Enter、Tab)字符串作为输入传给变量(自动),然后以空白符Space、Enter、Tab结束一次输入(变量末尾自动补‘/0’作为字符串结束),但做为结束的空白符(空格、回车)仍留在输入缓冲区不做删除。
2) gets(s)接受空格,制表符,不接受回车符。以回车符结束输入(空格不结束),会删除最后的回车符(最后的回车符从输入缓冲区去除,此时输入缓冲区的第一个字符为回车的下一个字符),若回车符前无字符,则传给*s的值为‘\0’;