欢迎加入QQ讨论群258996829
麦子学院 头像
苹果6袋
6
麦子学院

写给小白的Objective-C基础

发布时间:2016-07-17 15:14  回复:0  查看:2381   最后回复:2016-07-17 15:14  
Objective-C( 以下简称 ObjC) 是一门强类型语言,强类型包括了两方面的含义:第一,所有的变量必须先声明,后使用;第二,指定类型的变量只能接收类型与之匹配的值。所以我们一起来 学习 Objective-C 的注释、标识符和变量。
1.1 注释 
程序注释是源代码的一个重要组成部分,对于一份规范的程序源代码而言,注释应该占到源代码的三分之一以上。
ObjC 提供了单行注释和多行注释。单行注释就是在程序中注释一行代码, ObjC 使用双斜线 (//) 进行单行注释;多行注释是指一次性将程序中的多行代码注释掉, ObjC 使用“ / ”和“ / ”将程序中需要注释的内容包含起来,“ / ”表示注释开始,“ / ”表示注释结束。
需要注意的是,多行注释不能嵌套。也就是说,在“ / / ”多行注释代码块哪,不能再次使用“ / / ”添加多行注释。
1.2 标识符和变量 
1.2.1  分隔符  
ObjC 里面的分隔符包括:分号 (;) ,花括号 ({}) ,方括号 ([]) ,圆括号 (()) ,空格,圆点 (.)
1. 分号  
ObjC 使用分号 (;) 作为语句的分隔,也就是说,每个 ObjC 语句必须使用分号 (;) 作为结尾。
ObjC 程序允许一行书写多个语句,每个语句之间用分号 (;) 分隔开来即可;一个语句也可以跨多行,只要在最后结束的地方使用分号 (;) 结束即可。
但要注意, ObjC 语句可以跨越多行书写,但一个变量名和变量的值不能跨越多行。另外,从程序的可读性的角度出发,应该避免在一行书写多个语句。
2. 花括号  
花括号 ({}) 的作用是定义一个代码块。一个代码块指的就是“ { ”和“ } ”所包含的一段代码,其在逻辑上是一个整体。
ObjC 中,类的成员变量、方法体部分、条件语句中的条件执行体和循环语句中的循环体等都是放在代码块中的。
3. 方括号  
方括号 ([]) 的主要作用是用于访问数组元素,它通常紧跟数组变量名,在它里面指定希望访问的数组元素的索引。
此外, ObjC 的对象调用方法时,通常也需要使用方括号括起来。
4. 圆括号  
圆括号 (()) 的功能非常的丰富,它可以用在:定义函数、调用函数、强制类型转换等地方。
5. 空格  
ObjC 使用空格分隔一个语句的不同部分。
ObjC 源程序可以使用空格来合理缩进代码,从而提供更好的可读性。但是,不能使用空格将一个变量名隔开成为两个或多个,这将导致程序出错。
6. 圆点 (.) 
圆点 (.) 通常作为对象及其属性之间的分隔符,表明调用某个实例的指定属性。
1.2.2  标识符规则  
标识符是用于给程序中变量、类、方法命名的符号。
ObjC 的标识符必须以字母、下画线 (_) 、美元符 ($) 开头,后面可以跟任意数目的字母、数字、下画线和美元符。
ObjC 的标识符中不可以包含空格,不能使用 ObjC 的关键字。 ObjC 是区分大小写的,也就是说, abc abC 是两个不同的标识符。
总结起来,使用标识符的规则如下:  
第一,标识符可以由字母、数字、下画线和美元符组成,但不能以数字开头。
第二,标识符不能完全是 ObjC 关键字。
第三,标识符不能包含空格。
第四,标识符只能包含美元符,不能包含 @ 、#等其它特殊字符。
1.2.3 ObjC 关键字  
ObjC 中有一些具有特殊用途的单词被称为关键字 (keyword) ,它们是专门为整个 ObjC 语言系统预留的。当定义标识符的时候,不要让它与关键字重名,否则将引起错误。
ObjC 中常用的关键字包括: auto break case char const continue default do double else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile while
1.3 示例程序 
基于本文中所学习的内容,示例程序如下:
////  main.m//  ex1////  Created by zhouzxi on 7/10/16.//  Copyright © 2016 Zhou Zhaoxiong. All rights reserved.//
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        int iInt1, iInt2, iInt3;   //  定义三个整型变量,中间使用逗号分隔
        iInt1 = 2;   //  iInt1 变量赋值为 2
        iInt2 = 7;   //  iInt2 变量赋值为 7
        iInt3 = iInt2 / (iInt1+1);  //  计算 iInt3 变量的值
        NSLog(@"iInt1=%d, iInt2=%d, iInt3=%d", iInt1, iInt2, iInt3);   //  打印三个变量的值
        /*
        //  下面两行代码被注释掉了
        NSLog(@"Hello, World!");
        NSLog(@"Hello, World!");
        */
    }
    return 0;
}
原文来自: C 博客
您还未登录,请先登录

热门帖子

最新帖子