gets | puts

  • gets:会读取空格,gets遇到\n后,不会存储\n,而是翻译为\0空字符

  • gets: 正常返回字符数组起始地址,失败返回 NULL

  • puts: puts成功时返回非负值,失败时返回EOF. puts只能用于输出字符串,同时会多打一个换行符。

char c[50];
while(gets(c) != NULL)
puts(c);

fgets

  • 失败返回NULL
      char  c[10];
      size_t len;
      while(fgets(c,sizeof(c),stdin) != NULL)
      {   
          c[strlen(c)-1] = 0;
          len= strlen(c);
          puts(c);
         printf("%u\n",len);
      }