Objective-C——第一个OC程序,以及OC程序的结构分析
来源:互联网 发布:windows vista开机视频 编辑:程序博客网 时间:2024/04/26 01:57
第一个OC程序,以及OC程序的结构分析
———- android培训、java培训、期待与您交流! ———-
- 第一个OC程序以及OC程序的结构分析
- 第一个Object-C程序
- OC程序的结构分析
- import的作用
- main函数
- NSLog函数
- autoreleasepool
第一个Object-C程序
//main.m#import <Foundation/Foundation.h>int main(int argc, const char* argv[]){ @autoreleasepool { NSLog(@"Hello World!"); } return 0;}
上面这段代码跟C是不是很像,下面我们来分析一下它的各个结构
OC程序的结构分析
import的作用
#import < Foundation/Foundation.h >
作用1
用来拷贝引入文件的内容
由于程序中用到了NSLog(@”Hello World!”)而NSLog()函数的声明和实现都在Foundation框架中。
所以我们需要使用 #import 来对Foundation框架进行引用作用2
可以防止文件内容被重复引用
//不用再加下面这些预处理代码来解决文件被重复引用的问题了#ifndef _STDIO_H#define _STDIO_H#endif
PS: 对于import类似的语句我们在C语言中也经常使用,本句对应C语言中的 #include 语句
main函数
int main(int argc, const char* argv[]){ return 0;}
1 main前面的int 是说mian函数的返回值类型,和return语句一起使用
作用:告示系统本程序的退出状态为02 参数 int argc
作用: 是统计本次程序运行一共传了多少个参数
如果一个都不传 argc == 1 表示运行程序的字符串名称3 参数 const char * argv[]
这是一个所有成员指向地址不可变的指针数组
作用 : 存储指向本次程序运行时键入的所有参数的指针
e.g. :
如果mian.m文件通过编译链接操作后指定得到的可执行程序名称为app,并且本次程序运行没有接收参数那么此时:
argc == 1 argv[0] equal ./app
如果mian.m文件通过编译链接操作后指定得到的可执行程序名称为app,并且本次程序运行接收了1个参数为HeyBoy那么此时:
./app HeyBoy argc == 2 argv[0] equal ./app argv[1] equal HeyBoy
NSLog函数
类似于C语言中的printf函数
作用: 打印字符串信息,本身有换行效果
用法: int sum = 0; NSLog(@”….. %d ….”, sum);
autoreleasepool{}
这是内存管理中对建立对象的释放机制,在{}中的对象只要调用 autorelease方法该对象就会被存储到autoreleasepool中
在程序结束前会对autoreleasepool中的所有对象进行内存释放对于对象释放可参看内存管理篇:
http://blog.csdn.net/chenlongcreate/article/details/44684413
本语句在较早的版本中是这样使用的
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];//code[pool drain];
1 第一句表示建立一个对象自动释放池
2 第二句表示释放池中存储的所有对象所占用的内存空间
3 在两个句之间的code相当于{}中写的代码
- Objective-C——第一个OC程序,以及OC程序的结构分析
- 黑马程序员--Objective-C——第一个OC程序
- 【Objective-C】03-第一个OC程序
- 【Objective-C】03-第一个OC程序
- 【Objective-C】03-第一个OC程序
- 黑马程序员————Objective C——第一个OC程序
- 【Objective-C】04-第一个OC程序解析
- 【Objective-C】04-第一个OC程序解析
- 【Objective-C学习-1】第一个OC程序
- 【Objective-C】04-第一个OC程序解析
- iOS学习(二)Objective-C 第一个OC程序
- 用objective c开发的第一个mac程序(2)——初识oc cocoa swift
- Objective-第一个OC程序解析
- 黑马程序员---objective-c基础学习--第一个oc程序及代码分析
- oc的第一个程序
- 第一个OC程序
- 第一个oc程序
- 第一个oc程序
- 网卡
- JAVA 输入/输出 IO
- 如何使用NSOperations和NSOperationQueues(二)
- Makefile经典教程(掌握这些足够)
- ORACLE用LIMIT实现类似分页
- Objective-C——第一个OC程序,以及OC程序的结构分析
- xshell的快捷键
- 书写是为了更好地思考
- http请求详解
- 如何使用NSOperations和NSOperationQueues(一)
- 投身于PHP怀抱:PHP5 + IIS7 + Windows X64 环境搭建
- [C/C++]Windows操作Path的API函数
- hdu 3874 Necklace 树状数组 离线操作
- 对于url出现jsessionid问题