串逐位和的概念
串逐位和是对两个字符串的对应字符进行逐位相加。一般是将它们的 ASCII 值相加,然后将结果转换为字符。
#import NSString *stringSum(NSString *str1, NSString *str2) { NSMutableString *result = [[NSMutableString alloc] init]; for (NSUInteger i = 0; i < [str1 length]; i++) { if (i < [str2 length]) { // 计算对应位置的字符的 ASCII 值之和 UInt8 sum = (UInt8)[str1 UTF8StringAtIndex:i] + (UInt8)[str2 UTF8StringAtIndex:i]; // 将结果转换为字符并添加到结果字符串中 [result appendCharacter: (Character)sum]; } else { // 如果一个字符串比另一个长,继续处理剩余字符 [result appendString: [str1 substringFromIndex:i]]; break; } } return [result length] > 0 ? [result substringFromIndex:0] : @""; }