i've seen lot of questions converting hex int, these of unsigned-> unsigned variety. how convert signed hex int?
eg.
somefunc('0xfffff830') = -2000
your question implies dealing 32-bit signed integers (otherwise 0xfffff830 not considered negative), work:
let num = "0xfffff830" let x = int32(truncatingbitpattern: strtoul(num, nil, 16)) println(x) // -2000 strtoul() converts hex string unsigned integer uint, , int32(truncatingbitpattern:) creates (signed) 32-bit integer lowest 32 bits of given argument.
Comments
Post a Comment