OC基础教程1-Hello Wrold(OS X版)

这篇博客介绍了Objective-C的基础知识,通过一个简单的Hello World程序来阐述OC的基本语法和开发环境。内容包括#import语句的作用,框架的概念,NSLog()的使用以及@"字符串"的解释。OC是苹果操作系统的主要编程语言,源于SmallTalk-80,文章还简要提到了内存管理的@autoreleasepool。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本来前两年就应该写技术博客了,一直在学习中。这次开始写技术博客一方面是自己学习总结,另一方面也是为了Christina。


OC背景

Objective-C,也就是通常所说的OC语言,是扩充C语言的面向对象编程语言。
它是苹果的OS X和iOS操作系统及其相关API、Cocoa和Cocoa Touch的主要编程语言。
它最初源于NextStep操作系统,之后在OS X和iOS中继承下来。
20世纪80年代初,Brad Cox 与Tom Love以SmallTalk-80语言为基础发明了Objective -C。


1. 目标

通过一个最简单的Hello World,来了解OC简语法和OC的开发环境。

2. 内容

2.1 开发环境

操作系统版本:Mac OS X 10.9.5(虚拟机里搞的系统,木有升级,升级卡)
Xcode版本  :Xcode 6.1.1

2.2 Hello Wrold步骤

1)这里将演示OS X的命令行程序。故按下图选择最后按“Next”。

第一步

2)写好项目名称:HelloWorld,点击“Next”。

第二步

3)选择项目将保存的位置:例如保存到“13.Test”文件夹下。

3.1

3.2

4)点击main.m文件,可看到Xcode预留的Hello World的源代码。

4

5)点击右上角的“三角形”图标,将程序编译运行。

5

3.源代码分析

#import<Foundation/Foundation.h>
int main(int argc,const char *argv[]){
    @autoreleasepool{
        NSLog(@"Hello,World!"); 
    }
}

3.1 #import 语句

.#import相当于C语言中的#include。
.#import是由Xcode使用的编译器提供的,Xcode在你编译Objective-C、C和C++程序时都会使用它。#import可保证头文件只被包含一次,无论些命令在该文件中出现了多少次。

3.2 框架

框架是一种把头文件、库、图片、声音等内容聚集在一个独立单元中的集合体。
至于怎么理解框架呢,我的简单理解就是:框架就是一个程序的工具箱,里面有人家发明的各式各样的工具,而你就可以不用再自己创造工具(因为暂时你没人家叼),而且可以直接就可以使用人家发明工具来做出自己想要的东东,写出自己想要的程序了。
苹果公司所用的Cocoa就是由Foundation和UIKit框架组成。
3.3.2

3.3 NSLog()和@”字符串“

NSLog()相当于printf()。就是向控制台输出字符串。

@”字符串“,这个没什么好解释的,就是让字符串穿上@”“的衣服,好让Xcode认识,这是字符串。

@符号是Objective-C在标准C语言基本上添加的特性之一。@符号意味着”“里的字符串应该作为Cocoa的NSString元素来处理。问题又来了NSString是什么?很简单滴,NSString= NS + String,NS就是为了将标准C语言里的String区别出来,就是一个简单前缀,用来避免和C语言名称冲突滴。

至于为什么是NS呢?这又是另一个故事了,提示一下,乔老爷子当年被苹果开除后,自已又开了一个新公司,搞了一个NEXTSTEP操作系统(牛逼)。后来苹果知道错了,又将乔老爷子请回苹果,于是乔老爷子带回了这个操作系统。(NextStep,NS)

3.3.3

3.4 @autoreleasepool

这个是内存管理的东东,这个东东留到后面专门讲解,内存管理的故事有点长。

4.总结+废话

1)写出了程序界著名的HelloWorld!
2)知道了OC是C语言的儿子,儿子身上有父亲的影子,同时儿子又特意区别自己与父亲的不同(前缀),儿子青出于蓝而胜于蓝(面向对象),但要记得,”老子才是天下第一“(开玩笑的啦!0.0)
3)@开头的字符串,如@”HelloWorld!“,NSLog()控制台输出,类似printf()。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值