您的位置:首页 > 移动开发 > Objective-C

Objective-C学习笔记第二章对C的扩展

2012-05-25 17:48 393 查看
一、构建Hello Objective-C

建立项目后在.m结尾文件内

代码如下:

#import <Foundation/Foundation.h>

int main(int argc, const char *argv[])

{

NSlog(@"Hello,
Objective-C");

return(0);

}

代码解读:

#import 使用头文件来包含元素声明,元素可以包括结构体、符号常量、函数原型

#import可以保证头文件只被包含一次,在C语言中一般使用#ifdef命令实现, Objective-C中也可使用#include实现不过一般都用#import

NSlog()和@"字符串"

NSlog()用于向控制台输出,C语言中使用printf()向控制台输出

@"字符串"表示引用的字符串将作为Cocoa的NSString来处理

必须向NSlog()传递@"字符串",否则将会报警

NSlog()格式化字符串

%d表示数字,%@表示字符串,%s表示非Cocoa规格的字符串

NSLog (@"are
%d and %d different? %@", 5, 5, YES);

NSString的功能:

告知其长度

自身一其他字符串比较

将自身转换为整型值或浮点值

BOOL类型

它具有YES(1)和NO(0)值

Objective-C中提供了BOOL类型和C的bool类并存,并且年长10余年

在编写Cocoa代码中必须要使用BOOL类型

main(int argc, const char *argv[])

argv中保存用户提供的参数,argv[0]保存程序名称

argc提供参数的数组长度,为1时没有参数

调出控制台的快捷键:

Start+Shift+R 或者在菜单Run中选Console

BOOL类型示例代码

#import <Foundation/Foundation.h>

// returns NO if the two integers have the same

// value, YES otherwise

BOOL areIntsDifferent (int thing1, int thing2)

{

if (thing1
== thing2) {

return (NO);

} else {

return (YES);

}

} // areIntsDifferent

// given a YES value, return the human-readable

// string "YES". Otherwise return "NO"

NSString *boolString (BOOL yesNo)

{

if (yesNo
== NO) {

return (@"NO");

} else {

return (@"YES");

}

} // boolString

int main (int argc, const char *argv[])

{

BOOL areTheyDifferent;

areTheyDifferent
= areIntsDifferent (5, 5);

NSLog (@"are
%d and %d different? %@",

5, 5, boolString(areTheyDifferent));

areTheyDifferent
= areIntsDifferent (23, 42);

NSLog (@"are
%d and %d different? %@",

23, 42, boolString(areTheyDifferent));

return (0);

} // main
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: