Objective-C 第一节课

本节课的主要内容

  • 创建Objective-C的第一个工程
  • HelloWorld
  • Objective-C中的字符串

创建Objective-C的第一个工程

  • 打开Xcode开发工具(IDE)
  • 点击"Create a new Xcode project"
  • 选择OS X模板集下的Command line tool模板
  • 填写project name和bundle identifier

Hello World

main.m程序的入口文件
//
// main.m
// HelloWorld
//
// Created by lewis on 9/7/15.
// Copyright (c) 2015 lewis. All rights reserved.
// #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
NSLog(@"Hello, World!");
}
return 0;
}
那么现在我们来分析一下整个main.m文件的结构
  • 注释部分

    • 在注释部分,大家应该都没有问题,跟c、c++的注释风格很相近;
  • 导入头文件部分
    • #import关键字的功能,类似于C、C++语言中的#include关键字,但是功能不是完全相同;
  • 主函数实现部分
    • int main(int argc, const char * argv[])整个程序的入口函数,在函数的参数里包含里程序的基本信息
    • @autoreleasepool作为Objective-C内存管理章节的重点内容
    • return 0则作为主函数的默认返回值予以返回,无具体含义
接下来使用键盘快捷键command + r或者点击Xcode工具栏部分的运行按钮,运行程序

1.可以看到Xcode工具栏的编译过程

2.可以看到Xocde会打开一个新的Debug控制台输出面板,显示Hello,World字样

这样,我们第一个Objective-C程序就运行成功了.

试一试,打印@"Hello World"字符串

Objectvie-C中的字符串

  • Objective-C中的字符串表示时都使用@关键字,例如:

    • @"xiaohao"
    • @"lewis"
    • @"human"
  • Objective-C中的字符串的数据类NSString和NSMutableString,例如:

    • NSString *str_1 = @"xiaohao"
    • NSString *str_2 = @"lewis"
    • NSMutableString *mustr_1 = @"human"

试一试,修改@"Hello World"为不同的字符串

[iOS]Objective-C 第一节课的更多相关文章

  1. centos mysql 实战 第一节课 安全加固 mysql安装

    centos mysql  实战  第一节课   安全加固  mysql安装 percona名字的由来=consultation 顾问+performance 性能=per  con  a mysql ...

  2. Centos安装自定义布局才能自己划分各个区的大小ctrl+z ,fg ,route -n ,cat !$ ,!cat ,XShell 设置, ifconfig CentOS远程连接 Linux中的输入流 第一节课

    Centos安装自定义布局才能自己划分各个区的大小ctrl+z ,fg ,route -n ,cat !$ ,!cat ,XShell 设置, ifconfig  CentOS远程连接  Linux中 ...

  3. Java第一节课动手动脑

    在第一节课的动手动脑中,主要解决四则运算问题. 首先第一个是出30道四则运算题目,在100以内.这个问题需要控制随机数生成的范围和结果的范围在100以内就可以. 第一次改进是3点:一为避免重复,二为定 ...

  4. 左神算法第一节课:复杂度、排序(冒泡、选择、插入、归并)、小和问题和逆序对问题、对数器和递归(Master公式)

    第一节课 复杂度 排序(冒泡.选择.插入.归并) 小和问题和逆序对问题 对数器 递归 1.  复杂度 认识时间复杂度常数时间的操作:一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,叫做常数 ...

  5. JAVAWEB第一节课的课后思考

    第一开发一个网站需要的一些技术 至少熟悉一种建站程序.(html,javascript等等)对空间和域名的知识有一定的了解.有一些美工基础(例如ps设计等等).对编程有一些了解.HTML的代码知识基本 ...

  6. springboot的第一节课

    快速开始spring boot应用 官方向导搭建boot应用 地址:http://start.spring.io/ 设置项目属性: 3.解压,拷贝到工作空间,导入maven项目 4.写Controll ...

  7. 【皇甫】☀Struts_第一节课

    本章讲解内容: DTD是Docunent Type Defintion的缩写,即文档类型定义.DTD用来描述XML文档结构. DOM4J是一个非常优秀的javaXML API,具有性能优异,功能强大和 ...

  8. 初学Python——第一节课

    一.Python语言的特性: 1.与C语言不同,Python语言是一门解释性语言.程序在执行过程中,执行一步.编译一步. 2.Python是一个动态类型语言,不需要定义变量的数据类型. 3.Pytho ...

  9. 第一节课:java介绍以及java开发环境的安装

    互联网时代 什么是软件 什么是硬件 什么是操作系统 java是什么? 计算机高级程序语言 java能做什么? 开发软件(网站.app.游戏.应用系统.嵌入式) java对应的职位链(需求->产品 ...

随机推荐

  1. Android实现Excel表格,且表格能左右、上下滑动

    1.自定义实现一个水平滚动控件HorizontalScrollView import android.content.Context; import android.util.AttributeSet ...

  2. 图解HTTP读书笔记--精简版

    这本书重点讲了两点,分别是 HTTP的报文格式 HTTPS比HTTP优秀在哪里 接下来分部分讨论一下: 1. HTTP的报文格式 请求报文格式: 请求行     指明请求方法 请求路径 和协议   如 ...

  3. 使用WMware新建linux虚拟机

    使用WMware安装linux虚拟机的时候很多人搞不清楚使用什么适配器. 平时也看到很多误人子弟的观点,这里用事实说话. VMWare提供了三种工作模式,它们是bridged(桥接模式).NAT(网络 ...

  4. 打不开BT,一直重复的关闭开启。

    /bt-btif (25335): ...preload_wait_timeout (retried:0/max-retry:1)...D/bt_userial(25335): RX terminat ...

  5. wl18xx wifi编译出现没有编译wlcore_sdio的情况

    打开config.mk ........................................................................................ ...

  6. 快速玩转Apple Pay开发

    快速玩转Apple Pay开发 更新时间:2016年02月20日09时25分 来源:传智播客 Apple Pay 2016年2月18日上午,苹果公司宣布,与中国银联达成合作,正式在中国大陆上线Appl ...

  7. skia入门

    SkBitmap bmp; bmp.setConfig(SkBitmap::kARGB_8888_Config, rect.Width(), rect.Height()); bmp.allocPixe ...

  8. android cts 命令的说明

    Host help showthis message 帮助文档 exit exitcts command line 退出CTS ls 全部用l替代,--plan直接用p替代,也即 l p .其他类似 ...

  9. POJ 1470 Closest Common Ancestors(LCA 最近公共祖先)

    其实这是一个裸求LCA的题目,我使用的是离线的Tarjan算法,但是这个题的AC对于我来说却很坎坷……首先是RE,我立马想到数组开小了,然后扩大了数组,MLE了……接着把数组调整适当大小,又交了一发, ...

  10. HDU 4612 Warm up(双连通分量缩点+求树的直径)

    思路:强连通分量缩点,建立一颗新的树,然后求树的最长直径,然后加上一条边能够去掉的桥数,就是直径的长度. 树的直径长度的求法:两次bfs可以求,第一次随便找一个点u,然后进行bfs搜到的最后一个点v, ...