我試圖對我創建的iPhone應用程序使用MD5加密。我創建用下面的代碼的md5.m文件(從StackOverflow的複製):使用在調用MD5函數(Obejctive-C,iPhone)時遇到問題
#import <CommonCrypto/CommonDigest.h>
NSString* md5(NSString *str) {
const char *cStr = [str UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(cStr, strlen(cStr), result);
return [[NSString
stringWithFormat:@"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",
result[0], result[1],
result[2], result[3],
result[4], result[5],
result[6], result[7],
result[8], result[9],
result[10], result[11],
result[12], result[13],
result[14], result[15]
] lowercaseString];
}
我然後試圖調用的函數(在不同.m文件):
NSString *digest = md5(@"password");
但對於某些原因,我繼續得到錯誤「之前'mad5'期待的表達式'」...我沒有錯過什麼?
感謝您的答案。我做了#import,但是我的頭文件設置有點不同: - (NSString *)md5Return:(NSString *)str; – tyng 2010-11-14 19:45:00
看到我編輯的帖子。 .h中的方法應該始終與.m文件中的方法匹配。 – 2010-11-14 19:57:54
完全工作!非常感謝 :) – tyng 2010-11-14 20:43:52