为什么 strlen() return 这里的字节数不正确?
Why doesn't strlen() return the correct number of bytes here?
NSString* data = @"UdmAjkmNQs79+J/a/MVVSACRkIo=";
NSData *key = [NSData dataFromBase64String:data];
const char *keyBytes = [key bytes];
NSLog(@"Length: %lu", strlen(keyBytes));
考虑上面的代码。我有一个包含 20 个字节数据的 base64 字符串。我把它变成字节,我喜欢检查字节数。这会打印 16。为什么它会打印 16,我需要做什么才能获得正确的字节数 (20)?
使用下面的代码获取数据字节长度:
NSString* data = @"UdmAjkmNQs79+J/a/MVVSACRkIo=";
NSData *key = [[NSData alloc] initWithBase64EncodedString:data options:NSDataBase64DecodingIgnoreUnknownCharacters];
NSLog(@"Length: %lu", [key length]);
NSString* data = @"UdmAjkmNQs79+J/a/MVVSACRkIo=";
NSData *key = [NSData dataFromBase64String:data];
const char *keyBytes = [key bytes];
NSLog(@"Length: %lu", strlen(keyBytes));
考虑上面的代码。我有一个包含 20 个字节数据的 base64 字符串。我把它变成字节,我喜欢检查字节数。这会打印 16。为什么它会打印 16,我需要做什么才能获得正确的字节数 (20)?
使用下面的代码获取数据字节长度:
NSString* data = @"UdmAjkmNQs79+J/a/MVVSACRkIo=";
NSData *key = [[NSData alloc] initWithBase64EncodedString:data options:NSDataBase64DecodingIgnoreUnknownCharacters];
NSLog(@"Length: %lu", [key length]);