天天看點

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語言中用來儲存一段代碼.