iOS

前言

  • 结构体,这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围。

    	typedef struct _NSRange {
    		NSUInteger location;      // 表示该范围的起始位置
    		NSUInteger length;        // 表示该范围内所含的元素个数
    	} NSRange;
    	
    	typedef unsigned long NSUInteger;
    

1、NSRange 结构体变量的创建与调用

	// NSRange 结构体变量的创建与赋值
		    
		// 先定义变量,再赋值
		NSRange range1;
		range1.location = 6;
		range1.length = 1;
		    
		// 定义时直接赋值
		NSRange range2 = {7, 2};
		
		// 给指定成员赋值
		NSRange range3 = {.length = 3, .location = 8};
		
		// 使用函数赋值
		NSRange range4 = NSMakeRange(9, 4);
		    
	// NSRange 结构体变量值的调用
	    
		NSLog(@"range1: %zi, %zi", range1.location, range1.length);
		NSLog(@"range2: %zi, %zi", range2.location, range2.length);
		NSLog(@"range3: %zi, %zi", range3.location, range3.length);
		NSLog(@"range4; %zi, %zi", range4.location, range4.length);

2、NSRange 与 NSString 的相互转换

	// NSRange 转 NSString
	NSString *stringFronRange = NSStringFromRange(range4);
	  	
	// NSString 转 NSRange
	NSRange range5 = NSRangeFromString(stringFronRange);
原文地址:https://www.cnblogs.com/QianChia/p/5780969.html