久久人妻牲爱视频,亚洲无码视频区,黑人操人妻一区二区,aaa在线视频,日产精品久久久久久久,99熟妇诱惑视频,激情只爱无码,国产精品日韩一区二区,超碰成人三级在线

Object-c 使用 NSLog 打印日志 格式簡介

原創(chuàng) 3 收藏 評(píng)論1
舉報(bào) 2015-01-19

對(duì)于一個(gè)Object-C語言的初學(xué)者,一定會(huì)經(jīng)常看到的打印NSLog這個(gè)方法,但是對(duì)于需要打印的信息的格式化又很難分清楚何時(shí)該用哪種方式格式化,Object-C對(duì)格式化數(shù)據(jù)要求比較嚴(yán)格,所以對(duì)要打印的數(shù)據(jù)如果格式化方式不正確是無法打印出自己想要的結(jié)果的。在此整理一下NSLog 的格式:

%@ 對(duì)象  
%d, %i 整數(shù)  
%u 無符整形  
%f 浮點(diǎn)/雙字  
%x, %X  二進(jìn)制整數(shù)  
%o 八進(jìn)制整數(shù)  
%zu size_t  
%p 指針  
%e 浮點(diǎn)/雙字 (科學(xué)計(jì)算)  
%g 浮點(diǎn)/雙字  
%s C 字符串  
%.*s Pascal字符串  
%c 字符  
%C unichar  
%lld 64位長整數(shù)(long long)  
%llu 無符64位長整數(shù)  
%Lf 64位雙字

基本上,NSLog很像printf,同樣會(huì)在console中輸出顯示結(jié)果。不同的是,傳遞進(jìn)去的格式化字符是NSString的對(duì)象,而不是chat *這種字符串指針。

NSLog可以如下面的方法使用: 

NSLog (@”this is a test”);    
NSLog (@”string is :%@”, string);
NSLog (@”x=%d, y=%d”, 10, 20);

聲明對(duì)象的類型決定了,NSLog的打印格式。


附上Object-C的基本數(shù)據(jù)類型


    Objective-C數(shù)據(jù)類型可以分為:基本數(shù)據(jù)類型、對(duì)象類型和id類型。基本數(shù)據(jù)類型有:int、float、double和char類型。對(duì)象類型就是類或協(xié)議所聲明的指針類型,例如:NSAutoreleasePool * pool,其中NSAutoreleasePool是一個(gè)類,NSAutoreleasePool *是它指針類型。id類型可以表示任何類型,一般只是表示對(duì)象類型,不表示基本數(shù)據(jù)類型。

int類型


int類型代表整數(shù),它的十六進(jìn)制表示方式:0xFFED0D,在使用NSLog函數(shù)中格式化字符串使用%i表示十進(jìn)制的整數(shù),%o(字母o)表示8進(jìn)制整數(shù),%#x表示十六進(jìn)制整數(shù)。它的取值范圍是與設(shè)備相關(guān)的,無法一概而論。

float類型


float類型代表單精度浮點(diǎn)數(shù),要表示float類型浮點(diǎn)數(shù),可以在數(shù)值后面加上f或F,例如:13.5f。float浮點(diǎn)數(shù)也可以用科學(xué)計(jì)數(shù)法表示,例如:1.7e4。NSLog函數(shù)中格式化字符串:%f表示浮點(diǎn)數(shù),%e表示科學(xué)計(jì)數(shù)法,%g表示浮點(diǎn)數(shù)。

double類型


double類型代表雙精度浮點(diǎn)數(shù),與float類型很相似,占用的字節(jié)空間double類型大體上是float類型的兩倍。大多數(shù)計(jì)算機(jī)是用64位表示double類型。NSLog函數(shù)中格式化字符串,與float的%f、%e和 %g相同。

char類型


char類型代表字符類型,存放點(diǎn)個(gè)字符,用單引號(hào)引用起來。例如: 'A',如果要表示一些特殊字符,要使用轉(zhuǎn)義字符“\”。

Obejctive-C中數(shù)據(jù)類型可以在int、float、double和char類型前面加上限定詞,限定詞有:long、long long、short、unsigned和signed,這些限定詞從而增強(qiáng)了基本類型。

long int,在大部分計(jì)算機(jī)中代表32位整數(shù),在整數(shù)后面加L(或l)表示,例如:long int numberOfPoints = 131071100L,NSLog函數(shù)中格式化字符串使用%li表示;


long long int可以指定更加寬泛的整數(shù)類型,保證變量至少64位寬度。NSLog函數(shù)中格式化字符串使用%lli表示;

long double ,可以指定更加寬泛的double類型,要顯示這個(gè)可以在尾部使用L(大小寫)表示,1.234e+7L。NSLog函數(shù)中格式化字符串使用%Lf、%Le和%Lg表示;

short int用來指定存放相對(duì)小的整數(shù),一般是占用int類型的一半。大部分計(jì)算機(jī)是16位;

unsigned int,告訴編譯器只是接受整數(shù),在數(shù)值之后放字母u(或U)表示,例如:0x00ffU;編寫整數(shù)時(shí)候,可以將字母u(或U)和l(或L)組合起來,例如:20000UL;


signed char,代表的字符與編譯器有關(guān),一般也作為無符合整數(shù)使用。

    評(píng)論

    文明發(fā)言,無意義評(píng)論將很快被刪除,異常行為可能被禁言
    DIGITALING
    登錄后參與評(píng)論

    評(píng)論

    文明發(fā)言,無意義評(píng)論將很快被刪除,異常行為可能被禁言
    800

    推薦評(píng)論

    全部評(píng)論(1條)

    靖宇县| 成武县| 永兴县| 保康县| 诏安县| 松桃| 铜梁县| 五常市| 定日县| 邵武市| 吉木乃县| 长武县| 金华市| 长宁县| 二连浩特市| 汾阳市| 定陶县| 西藏| 宜春市| 资阳市| 石河子市| 荣成市| 甘洛县| 库尔勒市| 吉安市| 北碚区| 洛川县| 河津市| 淮南市| 长葛市| 罗江县| 白水县| 女性| 襄汾县| 依兰县| 金溪县| 百色市| 景洪市| 山阳县| 横山县| 石嘴山市|