官术网_书友最值得收藏!

2.8 字符

在Objective-C中,字符類型用來操作單個字符,使用char關(guān)鍵字定義,字符內(nèi)容包含在一對單引號中;在NSLog()函數(shù)中,可以使用“%c”格式化顯示字符。如下面的代碼。

    #import <Foundation/Foundation.h>
    int main(int argc, const char *argv[])
    {
        @autoreleasepool {
            char chA = 'A';
            NSLog(@"%c", chA);
        }
        return 0;
    }

代碼會顯示大寫字母A。

關(guān)于char類型的操作。我們經(jīng)常會將它轉(zhuǎn)換為整數(shù),而這個整數(shù)就是字符的ASCII編碼。如int ascA = (int)'A';。

char類型的另一個常用功能就是組合為字符串,也就是我們所說的C風格字符串,其本質(zhì)上是一個以“\0”字符結(jié)束的char數(shù)組。數(shù)組的詳細內(nèi)容會在第6章介紹,我們先通過下面的代碼簡單了解一下這種字符串的使用。

    #import <Foundation/Foundation.h>
    int main(int argc, const char *argv[])
    {
        @autoreleasepool {
            char hello[] = {'H', 'e', 'l', 'l', 'o', '\0'};
            // char hello[] = "Hello\0";
            NSLog(@"%s", hello);
        }
        return 0;
    }

此外,在Objective-C項目中,我們還是更建議使用NSString類或NSMutableString類來處理字符串,在第7章會詳細討論。

無論是char類型或是字符串中,都會有一些特殊的字符,如單引號用于定義字符、雙引號用于定義字符串內(nèi)容,還有一些不可見字符,如ASCII編碼為0的字符、換行符等。對于這些字符,應(yīng)該在字符或字符串中使用轉(zhuǎn)義字符來定義,常用的包括:

? \’表示單引號。

? \"表示雙引號。

? \n表示換行符。

? \t表示制度符。

? \\表示\字符。

? \0表示ASCII代碼為0的字符,在C風格字符串中,都以此字符作為結(jié)束符號。

圖2-15為0~127編碼的ASCII碼表,大家可以參考使用。

圖2-15 ASCII編碼0到127

主站蜘蛛池模板: 万源市| 巩义市| 常德市| 韶山市| 信丰县| 永州市| 措美县| 吉隆县| 绵竹市| 修文县| 乐昌市| 南召县| 柘荣县| 教育| 九台市| 开鲁县| 安新县| 华坪县| 阳东县| 伊金霍洛旗| 东至县| 师宗县| 苍山县| 靖江市| 西充县| 永修县| 息烽县| 出国| 紫金县| 安泽县| 奉节县| 海淀区| 新干县| 蓬安县| 乌兰察布市| 镇平县| 叶城县| 新巴尔虎左旗| 乐昌市| 成都市| 祁阳县|