iOS 对于 struct 是如何输出打印的

我们经常会输出一些坐标尺寸信息之类的, 比如view的frame, 是CGRect类型的;
用 frame.oringial.x 和 frame.size.width 来做NSLog参数好麻烦, 还好苹果对这些常用的数据提供了字符串转换的方法, 如下:

NSString *NSStringFromCGPoint( CGPoint point);
NSString *NSStringFromCGSize( CGSize size);
NSString *NSStringFromCGRect( CGRect rect);
NSString *NSStringFromCGAffineTransform( CGAffineTransform transform);
NSString *NSStringFromUIEdgeInsets( UIEdgeInsets insets);
NSString *NSStringFromUIOffset( UIOffset offset);

使用方法举例:

NSLog(@"%@", NSStringFromCGRect(self.view.frame));
NSLog(@"%@", NSStringFromCGRect(self.view.bounds));

对于NSArray和NSDictionary这些容器则提供了description方法:

- ( NSString *)description;

使用方法举例:

NSMutableDictionary *dict = [[ NSMutableDictionary alloc ] init ];
NSLog ( @"log dict =%@" , [dict description ]);

你可能感兴趣的:(iOS 对于 struct 是如何输出打印的)