我想將短字符串轉換爲md5哈希,我發現有幾篇文章關於它,但沒有人工作。 這是我找到的最簡單的例子。我有這個錯誤「隱式函數聲明」錯誤Objective-C
功能CC_MD5的隱含聲明是無效的C99
- (NSString *) md5:(NSString *) input
{
const char *cStr = [input UTF8String];
unsigned char digest[16];
CC_MD5(cStr, strlen(cStr), digest); // This is the md5 call
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x", digest[i]];
return output;
}
UPDATE 我添加#進口,它的工作很好,當我調用的方法是這樣的:
[self md5:@"admin"];
,我得到正確的MD5散列。但是,當我這樣做
[self md5:userId];
我得到一個錯誤,
[NSDecimalNumber UTF8字符串]:無法識別的選擇發送到實例 0x4d3e280 但用戶id是不是小數,他包含Facebook的ID,但它的聲明作爲的NSString
NSString *userId;
@property(retain,nonatomic) NSString *userId;
我想你可能是指`` –
2011-12-13 23:23:56
它仍然有效。但是如果你想給出完整的位置,那麼就像SO的一半提到了 –
2011-12-13 23:26:14