scanf, gets, fgets

    技术2022-05-20  34

    #include <stdio.h> int main() { char str[80]; scanf("%s",str); printf("%s",str); return 0; } 输入:I love you! 输出:I 

    遇到空格结束 ,或:

    ① 遇空格、“回车”、“跳格”键。② 遇宽度结束。③ 遇非法输入。

     

    解决1:

    #include "stdio.h" int main() { char string[50]; scanf("%[^/n]",string); printf("%s/n",string); return 0; }  

    %[^/n]   遇换行结束。

     

    解决2:

    #include "stdio.h" int main() { char string[50]; fgets(string,50,stdin); fputs(string,stdout); return 0; }  

    由于gets在linux下gcc不支持,会出现warning: the `gets' function is dangerous and should not be used.

    所以用fgets。

    缺点:读取换行。

     


    最新回复(0)