2013-03-13 48 views
8

我发现这个MD5函数在这里:http://www.makebetterthings.com/iphone/how-to-get-md5-and-sha1-in-objective-c-ios-sdk/的iOS:Objective-C的MD5的NSString

- (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; 

} 

我有一个像这样在我的头文件中的签名:

- (NSString *) md5:(NSString *) input; 

没有显示出来没有错误在xCode中,除了我尝试使用该函数。

NSString *credentials = [md5 @"test"]; 

我得到的消息:未声明的标识符“MD5”

的使用如何使用这个功能呢?

+0

@ H2CO3类的这个方法:这会方便对他来说,有什么说什么你的http://计算器.com/questions/13575037/what-are-resources-for-learning-objective-c – 2013-03-13 18:35:12

+0

@ H2CO3:你在这里看到我的问题http://stackoverflow.com/questions/15392726/does-synchronized-guarantees-for-线程安全的,或者,不 – 2013-03-13 18:35:39

回答

9

您需要使用:

NSString *credentials = [self md5:@"test"]; //[md5 @"test"]; 

如果你拨打的是有方法md5: