1.Objective-c 基础介绍的是Objective-c和苹果公司提供的Cocoa工具包。Cocoa是使用Objective-c写的,不仅包括Mac OS X用户界面的所有元素,还包含其他许多内容。Cocoa 和 Objective-c是苹果公司Mac OS X 系统的核心。详读完本书之后可以看Learn Cocoa on the Mac 和Beginning iPhone Development 等书,都是由Dave Mark 和Jeff LaMarche写的。

2.构建第一个程序前,需要下载安装Xcode工具,可以在Developer/Applications下面找到源程序。New Project-Command Line Utility(命令行应用程序)-Foundation Tool(基础工具),保存文件。Xcode的.m扩展名表示含有Objective-c代码,由Objective-c编译器处理,C编译器处理.c结尾的文件,而C++编译器处理.cpp文件。在Xcode中所有编译工作全由GCC(GNU Compiler Collection,GNU编译器集合)处理,它能理解C语言的全部3个变体。

#import <Foundation/Foundation.h>语句告诉编译器查看Foundation框架中的Foundation.h头文件。

Foundation头文件目录为/System/Library/Frameworks/Foundation.framework/Headers/

苹果公司将Cocoa、Carbon、QuickTime和OpenGL等技术作为框架集提供,Cocoa的组成部分有Foundation和Application Kit(AppKit)框架。还有一个支持框架套件,包含Core Animation 和Core Image。

【foundation框架处理用户界面之下层(layer)中的特性,如数据结构和通信机制;
 application kit框架包含cocoa的高级特性:用户界面元素,打印,颜色,声音管理,AppleScript等】

Cocoa工具提供的函数、常量、类型名称都添加“NS”。双引号中字符串前有一个@,表示引用的字符串应作为Cocoa的NSString元素来处理。

配置warning as error: 选中项目,File-get info-build,搜索error,勾选treat warnings as errors复选框,同时configuration为All Configuration。

布尔类型:BOOL,value:YES\NO(1,0),静态常量值。不要将BOOL值与YES比较,但可以与NO比较。.

问题:为什么有些方法名前加*?强类型带*,表示指针,弱类型不用,对应的是java中的对象与基础类型,适用于变量声明和方法返回值。

   main方法必须返回0吗?main方法

%d表示输出整数

%@表示输出NSString类型、以及任意对象类型,对象可以通过定义description方法来定义自己的输出格式,类似于重写java中的toString()方法。

%s表示输出字符串数组(char*);

转载于:https://www.cnblogs.com/jackbutler/archive/2012/02/11/2346737.html

[Objective-c基础教程] chapter one Before You Start chapter two Extensions to C相关推荐

  1. Objective C 基础教程

    复合 使用复合可组合多个对象,使之人工协作. 会同时使用继和复合来创建自己的类. 编程中的复合就好像音乐中的作曲一样:将多个组件组合在一起配合使用. 在Objective-C中,复合是通过包含作为实例 ...

  2. Objective C基础教程——Xcode工程创建

    Objective-C只不过是拥有一些附加特性的C语言.本文将构建第一个Objective-C程序,同时介绍一些关键的附加特性. ##2.1 最简单的Objective-C程序 我们来写一个最简单的H ...

  3. SQL基础教程 Chapter 3

    typora-copy-images-to: SQL basic 文章目录 typora-copy-images-to: SQL basic SQL基础教程 Chapter 3 3.1 对表进行聚合查 ...

  4. html显示当前时间_HTML基础教程:超链接的使用

    HTML 超链接(链接) 超链接可以是一个字,一个词,或者一组词,也可以是一幅图像,您可以点击这些内容来跳转到新的文档或者当前文档中的某个部分. 当您把鼠标指针移动到网页中的某个链接上时,箭头会变为一 ...

  5. NLTK01 《NLTK基础教程--用NLTK和Python库构建机器学习应用》

    01 关于NLTK的认知 很多介绍NLP的,都会提到NLTK库.还以为NLTK是多牛逼的必需品.看了之后,感觉NLTK对实际项目,作用不大.很多内容都是从语义.语法方面解决NLP问题的.感觉不太靠谱. ...

  6. C Primer Plus基础教程(1)— 初步认识C语言

    C Primer Plus基础教程(1)-初步认识C语言 一.C语言的起源 1972年,贝尔实验室的丹尼斯・里奇( Dennis Ritch)和背・汤普进( Ken Thompson)在开发UNX操作 ...

  7. Spring Cloud Alibaba基础教程:使用Nacos实现服务注册与发现

    自Spring Cloud Alibaba发布第一个Release以来,就备受国内开发者的高度关注.虽然Spring Cloud Alibaba还没能纳入Spring Cloud的主版本管理中,但是凭 ...

  8. [SQL基础教程] 1-5 表的删除和更新

    [SQL基础教程] 1-5 表的删除和更新 表的删除 语法 DROP TABLE <表名>; 法则 1-12 删除的表无法恢复 表定义的更新 语法 ALTER TABLE<表名> ...

  9. python 包用法_Python 基础教程之包和类的用法

    Python 基础教程之包和类的用法 这篇文章主要介绍了 Python 基础教程之包和类的用法的相关资料, 需要的朋友可以参考下 Python 是一种面向对象.解释型计算机程序设计语言,由 Guido ...

  10. Spring Cloud Alibaba 基础教程:Nacos 生产级版本 0.8.0

    Spring Cloud Alibaba 基础教程:Nacos 生产级版本 0.8.0 昨晚Nacos社区发布了第一个生产级版本:0.8.0.由于该版本除了Bug修复之外,还提供了几个生产管理非常重要 ...

最新文章

  1. MPB:林科院袁志林组-​内生镰刀菌基因组染色体级别组装和注释
  2. macos可以升级到指定版本吗_iOS14如期而至!重大更新的全新版本,值得升级吗?答案在这...
  3. C语言-获取当前时间-格式化输出(完整代码)
  4. CS08 用户服务工程师(青岛)
  5. [WPF]WPF Data Virtualization和UI Virtualization
  6. 学会2种方法,小白也能快速产出标准的Axure原型
  7. 腾讯地图获取地址的经度和纬度
  8. 思科路由器基本配置命令
  9. Web服务器配置管理
  10. 科普 [分子力学总势能(或者LJ势能)能量最小化]
  11. 木瓜移动全方位布局跨境电商SaaS木瓜大橙, 这条新赛道有何机遇?
  12. 极光笔记丨百亿级数据的实时存取优化与实践
  13. 如何将WORD中的公式转为图片
  14. 程序设计课程设计报告(学生成绩管理系统)
  15. 模拟磁盘调度 课程设计(操作系统 C语言)
  16. Oracle同步数据到MySQL
  17. 在机器人面前,人类怎样做才能不悲观
  18. 人类早期驯服野生CNN卷积神经网络的情景
  19. python代码调用谷歌翻译_Python3 调用谷歌翻译
  20. LeetCode 876 题解

热门文章

  1. 精读《手写 SQL 编译器 - 错误提示》
  2. 初创企业不上云拿什么“火拼”?
  3. Objective-C市场占有率排名升至第4位
  4. (转载)jdbc事务处理
  5. (附下载地址)制作RPM包(星际译王词典包)
  6. 【EXLIBRIS】随笔记 001
  7. 如何使用Scala的ClassTag
  8. 树莓派安装oepncv3.43
  9. Anchor Boxes——目标检测质量的关键
  10. 如何处理Eclipse错误消息 The declared package does not match the expected package