黑馬程式設計師——OC基礎---Foundation框架之結構體
阿新 • • 發佈:2019-01-25
一、概述
Foundation—基礎框架。框架中包含了很多開發中常用的資料型別,如結構體,列舉,類等,是其他ios框架的基礎。
如果要想使用foundation框架中的資料型別,那麼包含它的主標頭檔案就可以了。
即#import
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
//定義一個字串
NSString *str = @"hello world" ;
//查詢某個字串在str中的範圍
//如果找不到,length = 0,location = NSNotFound = -1
NSRange range = [str rangeOfString:@"hello"];
NSRange range1 = [str rangeOfString:@"nihao"];
NSLog(@"%ld,%ld",range.length,range.location);
NSLog(@"%ld,%d",range1.length,(unsigned)range1.location );
}
return 0;
}
執行結果:
四、NSPoint\CGPoint的使用
示例程式碼:
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
//開發中最常使用的是CGPoint,因為它是跨平臺的
//建立結構體變數
CGPoint point = NSMakePoint(10, 10);
CGPoint point1 = CGPointMake(20, 20);//最常用
}
return 0;
}
五、NSSize\CGSize的使用
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
NSSize s1 = CGSizeMake(100, 100);
NSSize s2 = NSMakeSize(100, 100);
CGSize s3 = NSMakeSize(100,100);
}
return 0;
}
五、NSRect\CGRect的使用
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
CGRect r1 = CGRectMake(0, 0, 100, 100);
CGRect r2 = NSMakeRect(0, 0, 100,100);
}
return 0;
}
利用框架函式把相應的結構體轉變成字串,再直接列印字串
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
//開發中最常使用的是CGPoint,因為它是跨平臺的
//建立結構體變數
CGPoint point = NSMakePoint(10, 10);
CGPoint point1 = CGPointMake(20, 20);//最常用
NSString *str = NSStringFromPoint(point);
NSString *str1 = NSStringFromPoint(point1);
NSLog(@"%@,%@",str,str1);
}
return 0;
}
執行結果:
六、Foundation框架中一些經常用到的結構體函式
程式碼:
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
NSSize s1 = CGSizeMake(100, 100);
NSSize s2 = NSMakeSize(100, 100);
// CGSize s3 = NSMakeSize(100,100);
//比較尺寸是否相同
bool b = CGSizeEqualToSize(s1, s2);
NSLog(@"%d",b);
}
return 0;
}
執行結果: