该文章转载自:http://sheng.iteye.com/blog/775588
一:Objective-C入门
1、Cocoa的组成
苹果公司将Cocoa、Carbon、QuickTime和OpenGL等技术作为框架集提供
Cocoa组成部分有:
Foundation框架(有很多有用的,面向数据的低级类和数据结构)
Application Kit(也称AppKit)框架(包含了所有的用户接口对象和高级类,例如NS……)
,还有一个支持框架的套件,包括Core Animation和Core Image。
2、NSLog相当于printf()
NSLog(@"hello Objective-C");
//注:@是Objective-C在标准C语言基础上添加的特征之一,双引号的字符串前面有一个@,这表示引用的字符串应该作为Cocoa的NSString元素处理
NSLog(@"are %d and %d different? %@",5,5,boolString(areTheyDifferent));
//注意%@:使用NSLog输出任何对象值时,都会使用这个格式说明
3、BOOL使用8位存储,YES定义为1,NO定义为0,大于1不为YES,跟标准C不同。
若不小心将一个长于1字节的整型值赋给BOOL,则只截取低八位
Obejective-C中1不等于1,绝对不要将BOOL值和YES比较
二:面向对象的Objective-C
4、使用间接从本地读取文件的例子
#import <Foundation/Foundation.h>
int main(int argc,const char * argv[]) {
if(argc == 1){
NSLog(@"you need to provide a file name");
return (1);
}
FILE *wordFile = fopen(argv[1] , "r");
char word[100];
while (fgets(word,100,wordFile)){
//fget调用会保留分开每一行的换行符,我们不需要,把它替换为0,表示字符串的结束
word[strlen(word)-1] ='