OC9_字符串的内存管理

//
//  main.m
//  OC9_字符串的内存管理
//
//  Created by zhangxueming on 15/6/18.
//  Copyright (c) 2015年 zhangxueming. All rights reserved.
//

#import <Foundation/Foundation.h>

//字符串内存管理, retainCount的值可以不参考, 只需要遵守内存管理法则就行
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSString *str1 = @"hello world";
        NSLog(@"str1 retainCount = %li", str1.retainCount);
        NSString *str2 = [NSString stringWithString:str1];
        NSLog(@"str2 retainCount = %li", str2.retainCount);
        NSString *str3 = [[NSString alloc] initWithString:str1];
        NSLog(@"str3 retainCount = %li",str3.retainCount);
        
        NSLog(@"str1 = %p str2 = %p str3 = %p", str1, str2, str3);
        [str3 release];
        
        NSString *str4 = [str3 retain];
        NSLog(@"str4 retainCount = %li", str4.retainCount);
        [str4 release];
        
        NSString *str5 = [str4 copy];
        NSLog(@"str5 retainCount = %li", str5.retainCount);
        NSLog(@"str5 = %p str4 = %p", str5, str4);
        [str5 release];
        
        NSMutableString *mulStr1 = [[NSMutableString alloc] initWithString:str5];
        NSLog(@"mulStr1 retainCount = %li", mulStr1.retainCount);
        NSLog(@"mulStr1 = %p str5 = %p", mulStr1, str5);
        
        NSMutableString *mulStr2 = [mulStr1 retain];
        NSLog(@"mulStr2 retainCount = %li", mulStr2.retainCount);
        
        
        NSString *str6 = [[NSString alloc] initWithString:mulStr1];
        NSLog(@"str6 retainCount = %li", str6.retainCount);
        
        NSString *str7 = [[NSString alloc] init];//@""
        NSLog(@"str7 retainCount = %li", str7.retainCount);
        
        NSLog(@"str6 = %p str7 = %p", str6, str7);
        
        NSString *str8 = [str7 stringByAppendingString:@"qian feng"];
        
        NSLog(@"str8 retainCount = %li", str8.retainCount);
        NSLog(@"str8 = %p", str8);
        
        [str6 release];
        [str7 release];
        [mulStr1 release];
        [mulStr2 release];
    }
    return 0;
}

 

转载于:https://www.cnblogs.com/0515offer/p/4586969.html

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值