示例#1
0
文件: wprintf.c 项目: Alexpux/Cygwin
int
_wprintf_r (struct _reent *ptr,
       const wchar_t *fmt, ...)
{
  int ret;
  va_list ap;

  _REENT_SMALL_CHECK_INIT (ptr);
  va_start (ap, fmt);
  ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap);
  va_end (ap);
  return ret;
}
示例#2
0
文件: iprintf.c 项目: Alexpux/Cygwin
int
iprintf (const char *fmt, ...)
{
  int ret;
  va_list ap;
  struct _reent *ptr = _REENT;

  _REENT_SMALL_CHECK_INIT (ptr);
  va_start (ap, fmt);
  ret = _vfiprintf_r (ptr, _stdout_r (ptr), fmt, ap);
  va_end (ap);
  return ret;
}
示例#3
0
文件: puts.c 项目: easyaspi314/agbcc
int _puts_r(struct _reent *ptr, const char *s)
{
    size_t c = strlen(s);
    struct __suio uio;
    struct __siov iov[2];

    iov[0].iov_base = s;
    iov[0].iov_len = c;
    iov[1].iov_base = "\n";
    iov[1].iov_len = 1;
    uio.uio_resid = c + 1;
    uio.uio_iov = &iov[0];
    uio.uio_iovcnt = 2;

    return (__sfvwrite(_stdout_r(ptr), &uio) ? EOF : '\n');
}
示例#4
0
int
printf (const char *fmt, ...)
{
  
  int ret;
  va_list ap;
  FILE *stdout_ptr;
  unsigned int irqsave;
  
  irqsave = spin_lock_irqsave();
  stdout_ptr = _stdout_r (_REENT);
  spin_unlock_irqrestore(irqsave);

  va_start (ap, fmt);
  ret = vfprintf (stdout_ptr, fmt, ap);
  va_end (ap);
  return ret;
}
示例#5
0
文件: wprintf.c 项目: Alexpux/Cygwin
_wprintf_r (struct _reent *ptr,
       const wchar_t *fmt, ...)
{
  int ret;
  va_list ap;

  _REENT_SMALL_CHECK_INIT (ptr);
  va_start (ap, fmt);
  ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap);
  va_end (ap);
  return ret;
}

#ifndef _REENT_ONLY

int
wprintf (const wchar_t *__restrict fmt, ...)
{
  int ret;
  va_list ap;
  struct _reent *ptr = _REENT;

  _REENT_SMALL_CHECK_INIT (ptr);
  va_start (ap, fmt);
  ret = _vfwprintf_r (ptr, _stdout_r (ptr), fmt, ap);
  va_end (ap);
  return ret;
}

#endif /* ! _REENT_ONLY */