gar*_*ley 21 macos objective-c
我有一个生成字符串sha256加密的函数,
这是功能:
-(NSString*)sha256HashFor:(NSString*)input
{
const char* str = [input UTF8String];
unsigned char result[CC_SHA256_DIGEST_LENGTH];
CC_SHA256(str, strlen(str), result);
NSMutableString *ret = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH*2];
for(int i = 0; i<CC_SHA256_DIGEST_LENGTH; i++)
{
[ret appendFormat:@"%02x",result[i]];
}
return ret;
}
Run Code Online (Sandbox Code Playgroud)
现在这一行CC_SHA256(str, strlen(str), result);是产生此警告的内容(警告是针对strlen(str)变量的).
Implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'CC_LONG' (aka 'unsigned int')
Run Code Online (Sandbox Code Playgroud)
我猜我只需要将strlen(str)转换为CC_Long,但我不知道该怎么做.
小智 52
据推测,这不是一个错误,而是一个警告.
"我只需要将strlen(str)转换为CC_Long,但我不知道该怎么做." - 显式类型转换(类型转换):(CC_LONG)strlen(str)但我不认为你真的需要这个.
| 归档时间: |
|
| 查看次数: |
15121 次 |
| 最近记录: |