Contiki 2.5
_SP_puts.c
1 #include <stdio.h>
2 #include <string.h>
3 
4 
5 void __io_putchar ( char );
6 
7 void _SMALL_PRINTF_puts(const char *ptr, int len, FILE *fp)
8  {
9  if ( fp && ( fp->_file == -1 ) /* No file => sprintf */
10  && (fp->_flags & (__SWR | __SSTR) ) )
11  {
12  char *str = fp->_p;
13 
14  for ( ; len ; len-- )
15  {
16  *str ++ = *ptr++;
17  }
18  fp->_p = str;
19  }
20  else /* file => printf */
21  {
22  for ( ; len ; len-- )
23  __io_putchar ( *ptr++ );
24  }
25  }
26 
27 int puts(const char *str)
28  {
29  int len = strlen ( str );
30  _SMALL_PRINTF_puts(str, len, 0) ;
31  __io_putchar ( '\n' );
32  return len;
33  }
34