实话说吧,我觉得同时自学太多语言真是不太好,寒假给自己的任务太重了,但是没有办法啊,谁叫我参加了“我们的益达”的iOS组呢,可是承诺了寒假要好好学的,所以只能挖掘自己的时间、精力和潜力咯O(∩_∩)O哈哈~放假前从图书馆借来《Objective-基础教程》,现在开始看这本书自学了。下面废话少说,正式开始学习吧!
OC也是C的补充与扩展,增加了很多特性。
一、#import语句
它跟#include功能一样,但可以保证头文件只被包含一次。
二、NSLog() @"字符串"
NSLog()就是打印,可以包含格式化输出,还自动换行、自动增加时间戳,比较屌一点。@"字符串"是OC中字符串的写法,NSString,@是本体。
打印hello world的语句:
NSLog(@"Hello World!");
关于NS前缀:方便识别是Cocoa中的函数,所以自己取名就最好不要取NS为前缀的。
三、BOOL类型
有两个值YES或者NO。一个范例程序,让我们看看BOOL类型怎么用:
1 #import <Foundation/Foundation.h> 2 3 BOOL areIntsDifferent(int a,int b) { 4 if (a==b){ 5 return (NO); 6 } 7 else { 8 return (YES); 9 } 10 } 11 NSString *boolstring (BOOL yesNo) { 12 if (yesNo==NO) return (@"NO, they're same."); 13 else return (@"YES, they're different."); 14 } 15 16 int main(int argc, const char * argv[]) { 17 @autoreleasepool { 18 // insert code here... 19 NSLog(@"------Compare Numbers!------"); 20 int num1,num2; 21 BOOL result; 24 for(;;){ 25 printf("Please input 2 numbers:"); 26 scanf("%d %d",&num1,&num2); 27 result = areIntsDifferent(num1, num2); 28 NSLog(@"Are %d and %d different %@",num1,num2,boolstring(result)); 29 } 30 31 } 32 return (0); 33 }
第3行的函数areIntsDifferent判断输入的两个数是否不同,然后返回YES或NO值。
第11行的函数boolstring()的作用是将数值型的BOOL值映射为字符串格式来输出,返回值类型是一个指向NSString的指针,返回值前面有@号,表明它们是NSString的值。
main函数中,存在一个BOOL型的变量。输出时字符串的占位符是用的%@。
小结:这就是我今天学到的内容,学会了几个简单的语句,会了BOOL的用法。嗯~明天继续。