天天看点

Objective-C语言中的数据类型

"一:C语言中的数据类型

1> 基本数据类型

1,整型   int short long unsigned signed

2,浮点型 float(单精度浮点型) double(双精度浮点型)

3,字符型 char

2> 构造类型

1,数组

2,结构体

3,枚举

3> 空类型 void

4> 指针类型

5> typedef 自定义类型

"二:OC语言中新增的数据类型

OC语言完全兼容C语言,C语言中的数据类型在OC语言中完全适用,另外OC语言中新增了若干数据类型.

1>BOOL类型

2>Boolean类型

3>Class类型

4>nil

5>SEL类型

6>Block

"BOOL类型的底层:

1>

//BOOL类型即有符号的char类型

typedef signed char BOOL;

2>

#define YES ((BOOL)1)

#define NO  ((BOOL)0)

YES就是1,NO就是0,BOOL类型定义变量表示真假

3> 例:

写一个函数,返回值是BOOL类型,判断一个数的奇偶性,若为偶数返回:YES,若为奇数返回:NO.

#import <Foundation/Foundation.h>

//函数的声明

BOOL isEVenNum(int num);

int main(int argc, const char * argv[]) {

    //调用函数

    BOOL res = isEVenNum(100);

    if(res == 1)

    {

        NSLog(@"偶数");

    }

    else

    {

        NSLog(@"奇数");

    }

    return 0;

}

//函数的实现

BOOL isEVenNum(int num)

{

    if(num % 2 == 0)

    {

        return YES;

    }

    else

    {

        return NO;

    }

}

(见图)

"Boolean类型的底层:

1>

//Boolean类型即无符号的char类型

typedef unsigned char Boolean;

2>

#define true 1

#define false 0

true就是1,false就是0,Boolean类型定义变量表示真假

3> 例

写一个函数,返回值是Boolean类型,判断一个数是不是偶数如果是返回true,如果不是返回false.

#import <Foundation/Foundation.h>

//函数的声明

Boolean isEvenNum(int num);

int main(int argc, const char * argv[]) {

    //调用函数

    Boolean res =  isEvenNum(99);

    if(res == 1)

    {

        NSLog(@"偶数");

    }

    else

    {

        NSLog(@"奇数");

    }

    return 0;

}

//函数的实现

Boolean isEvenNum(int num)

{

    if(num % 2 == 0)

    {

        return true;

    }

    else

    {

        return false;

    }

}

"class类型:是OC语言中的类.

"nil:与C语言中的NULL类似.

"SEL类型:用来保存OC语言中的方法.

"Block:在OC语言中用来保存一段代码.