2011-10-24 19:03:18 -05:00
|
|
|
use std;
|
2011-12-13 18:25:51 -06:00
|
|
|
import str;
|
2011-10-24 19:03:18 -05:00
|
|
|
|
2011-11-16 22:49:38 -06:00
|
|
|
#[abi = "cdecl"]
|
2011-12-15 14:25:29 -06:00
|
|
|
#[nolink]
|
2011-11-16 22:49:38 -06:00
|
|
|
native mod libc {
|
2011-10-24 19:03:18 -05:00
|
|
|
fn atol(x: str::sbuf) -> int;
|
|
|
|
fn atoll(x: str::sbuf) -> i64;
|
|
|
|
}
|
|
|
|
|
|
|
|
fn atol(s: str) -> int {
|
|
|
|
ret str::as_buf(s, { |x| libc::atol(x) });
|
|
|
|
}
|
|
|
|
|
|
|
|
fn atoll(s: str) -> i64 {
|
|
|
|
ret str::as_buf(s, { |x| libc::atoll(x) });
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
assert atol("1024") * 10 == atol("10240");
|
2011-10-24 19:23:34 -05:00
|
|
|
assert (atoll("11111111111111111") * 10i64)
|
|
|
|
== atoll("111111111111111110");
|
2011-10-24 19:03:18 -05:00
|
|
|
}
|