3 回答
TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊
Joshua Weinberg的答案基本上是正確的,但是0x在掃描十六進(jìn)制整數(shù)時(shí),前綴是可選的。如果您使用格式的字符串#01FFFFAB,您仍然可以使用 NSScanner,但是您可以跳過第一個(gè)字符。
unsigned result = 0;
NSScanner *scanner = [NSScanner scannerWithString:@"#01FFFFAB"];
[scanner setScanLocation:1]; // bypass '#' character
[scanner scanHexInt:&result];
TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超10個(gè)贊
您可以為此使用NSScanner
unsigned int outVal;
NSScanner* scanner = [NSScanner scannerWithString:@"0x01FFFFAB"];
[scanner scanHexInt:&outVal];
outVal將包含您要查找的int。0x是可選的。
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以使用以下行進(jìn)行轉(zhuǎn)換。它只有一行代碼:
NSString *hexString = @"01FFFFAB";
length = (UInt64)strtoull([hexString UTF8String], NULL, 16);
NSLog(@"The required Length is %d", length);
快樂編碼!
- 3 回答
- 0 關(guān)注
- 621 瀏覽
添加回答
舉報(bào)
