File: scan_longlong.c

package info (click to toggle)
libowfat 0.28-6
  • links: PTS
  • area: main
  • in suites: wheezy
  • size: 4,068 kB
  • sloc: ansic: 12,863; makefile: 16
file content (12 lines) | stat: -rw-r--r-- 267 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
#include "scan.h"

size_t scan_longlong(const char* src,signed long long* dest) {
  unsigned int i,o;
  unsigned long long l;
  char c=src[0];
  o=c=='-' || c=='+';
  if ((i=scan_ulonglong(src+o,&l))) {
    if (i+o) *dest=c=='-'?-l:l;
    return i+o;
  } return 0;
}