`
ydbc
  • 浏览: 711339 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

Object-c基础之一:#import,NSLog(),数据类型

 
阅读更多

(1)在object-c中,用#import来代替C语言中的#include;

在一般的头文件中都会用#import<Foundation/Foundation.h>;

Foundation框架是一个处理用户界面之下的层中的特性,Foundation为cocoa框架的子集,cocoa框架还包括Application Kit框架。

(2)NSLog

此命令是向控制台显示输出语句,跟c语言的printf()很相似,比如:

NSLog(@”Hello World!”);则是在控制台输出HelloWorld!双引号中的字符串前有一个@符号,这表示引用的字符串应该作为Cocoa的NSString元素来处。前面的NS代表你这个函数是来自Cocoa而不是其他工具包,这是苹果公司的习惯问题,为了保存之前代码的兼容性,才继续采用NS前缀。

(3)数据类型

object-c支持的类型有:

布尔类型(boolean):他具有YES和NO两个值,与c语言的true和false类似。

例如:Booleanrunning;

对象类型:在object-c中,一个对象包含了数据和一组操作,这组操作可以使用或是修改对象的数据。

id:在object-c中,对象标识被作为一个特殊的数据类型:id。这个数据类型定义为引用对象的指针。实际上是指向对象实例变量的指针。

例如:idlight;

id和对象类型的比较

1,id关键字在编译时不被检查,而NSObject在编译时会被检查是否被调用一些错误方法。

2,id可以是任何对象,包括非NSObject对象

3,定义id的时候不使用*,NSObject却需要。

字符串类型(NSString):

例如:NSString*aString = @“我是一个NS字符串”;

或者可以这样创建: NSString *aString = [[NSString alloc] initWithFormat:@"这也是个NS字符串!"];

*initWithFormat是其中一个初始化方法,常用的还有

//从一个文件读取需要的内容

- (id)initWithContentsOfFile:(NSString *)pathencoding:(NSStringEncoding)enc error:(NSError **)error

//从一个地址读取需要的内容

-(id)initWithContentsOfURL:(NSURL *)urlencoding:(NSStringEncoding)enc error:(NSError **)error

*以上方法得到的NSString的retain值为1,所以要记得release掉(retain和release下次讲)

其他类型则与c语言具有较大的相似性,所以这里就不讲了。

分享到:
评论

相关推荐

    Object C语言教程及案例.docx

    我注意到您提到的是 Objective-C 语言,这是一种主要用于 macOS 和 iOS 开发的编程语言。下面是一个简要的 Objective-C 语言教程和一个基本的案例。 ### Objective-C 语言教程: #### 1. Hello World 程序 ```...

    Objective-C基础教程 中文 PDF 清晰版 [31M]

    中文名: Objective-C基础教程 作者: Mark Dalrymple Scott Knaster译者: 高朝勤 杨越 刘霞图书 分类: 软件 资源格式: PDF 版本: 扫描版 出版社: 人民邮电出版社 书号: ISBN: 9787115208774 发行时间: 2009...

    ios初级笔记

    首先NewFile创建类,选iOS中的Cocoa Touch,再点击Objective-C class,输入类名Student,作为NSobject(系统 自带)的子类 2&gt;.在.h中做方法的声明 在Student.h中: //@interface代表声明一个类 // : 代表继承 #...

    时间选择器

    引入头文件:#import "IFPSelectBornTimerView.h" //选择出生日期 使用方法: -(void)chooseBornTime { IFPSelectBornTimerView *timer = [[IFPSelectBornTimerView alloc] initWithFrame:self.view.bounds]; ...

    本地存储NSUserdefault封装(可存储各种类型)

    本地存储NSUserdefault封装(可存储各种类型),简单易用。 调用方法: #import "ViewController.h" #import "StudentModel.h" #import "InfoModel.h" #import "NSObject+JKLocalStore.h" @interface ...

    YLScratchView-master.zip

    if (progress&gt;=0.25) {//百分之25 [self.scratchCard.scratchMask removeFromSuperview]; } } - (void)scratchEnded:(CGPoint)point { NSLog(@"刮奖结束%f,%f",point.x,point.y); }

    Object-c 语法快速入门

    ”字符串”是C的字符串,@”"是把C的字符串转成NSString的一个简写. 在需要NSString的地方才需要这个转化,例如NSLog里面. 在需要C string的地方,还是用”字符串”的. 另外,@”"这个转换是不支持中文的.例如NSLog(@”...

    Objective-c对象组装XML

    [map setObject:@"c" forKey:@"content"]; 或者 NSMutableArray *list = [[NSMutableArray alloc]init]; NSMutableDictionary *map1 = [[NSMutableDictionary alloc]init]; [map1 setObject:@"a1" forKey:@...

    ios-封装UIWebVIew和WKWebView优化webview性能.zip

    NSLog(@"截取到URL:%@",URL); } - (void)zlcwebView:(ZLCWebView *)webview didFinishLoadingURL:(NSURL *)URL { NSLog(@"页面加载完成"); } - (void)zlcwebView:(ZLCWebView *)webview ...

    拖动的对话框效果

    这个源码是拖动的对话框效果,源码GUAAlertView,GUAAlertView能够弹出一个能够上下拖动的对话框。当对话框往下拖的时候就会消失。 使用方法: 添加GUAAlertView.h/m文件,并导入头文件: #import "GUAAlertView.h...

    带输入框的提醒对话框

    这个源码案例实现了一个带输入框的提醒对话框,源码STAlertView,STAlertView实现带输入框的提醒对话框。可以自定义标题、消息、按钮。通过Block回调。 使用方法: 导入头文件: #import 声明STAlertView属性...

    iOS search

    NSPredicate *preicate = [NSPredicate predicateWithFormat:@"SELF CONTAINS[c] %@", searchString]; if (self.searchList!= nil) { [self.searchList removeAllObjects]; } //过滤数据 self.searchList= ...

    iOS webview加载

    NSLog(@"页面开始加载"); } - (void)zlcwebView:(ZLCWebView *)webview shouldStartLoadWithURL:(NSURL *)URL { NSLog(@"截取到URL:%@",URL); } - (void)zlcwebView:(ZLCWebView *)webview didFinishLoadingURL:...

    objective-c的基本知识

    Category是ObjC语言中的扩展机制之一,另一个为Protocol。 Category提供一种为某个类添加方法而又不必编写子类的途径。 假设有这样一个类CarInfo: #import @interface CarInfo : NSObject { } -(void)sayCarBrand;...

    Objective-C矩阵库YCMatrix.zip

    YCMatrix 是使用 Objective-C 编写的灵活矩阵库,支持 Swift。YCMatrix 通过 Accelerate Framework 连接BLAS,LAPACK 和 vDSP 函数。YCMatrix 支持 OS X (10.7 ) 和 iOS (8.0 )。代码示例:@include YCMatrix; ...

    重定向NSLog 输出到本地案例

    作者jiaforios,源码ZJDebugLogView,实现方法:重定向NSLog 输出到本地 实现脱机下同样可以查看输出日志 使用方法: 在全局头文件中(.pch 文件) 中重新宏定义 NSLog #define NSLog(format, ...) do { \ (NSLog...

    iOS下json解析工具

    iOS下解析json数据,自己亲自使用过,挺好用的。 使用JSONKit的解析方法:(需导入包:#import "JSONKit/JSONKit.h") - (void)printJson{ //如果json是“单层”的,即value都是字符串、数字,可以使用...

    iphone开发学习笔记(1)--NSLog

    iphone开发学习笔记(1)--NSLog

    UIScrollView定时滚动和循环滚动,可点击图片和PageController

    #import "ASIFormDataRequest.h" #import "GWPublicClass.h" @interface ViewController () @end @implementation ViewController { UIScrollView * headScrollView; UIPageControl * pageControl; NSArray ...

Global site tag (gtag.js) - Google Analytics