IOS 开发之ObjectiveC的变量类型的字符代表

2025-05-29 0 44

IOS 开发之ObjectiveC变量类型的字符代表

实例代码:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23
NSDictionary *dic = @{@"1":[NSNumber numberWithBool:YES],

@"2":[NSNumber numberWithChar:'1'],

@"3":[NSNumber numberWithDouble:2.0],

@"4":[NSNumber numberWithFloat:2.0f],

@"5":[NSNumber numberWithInt:1],

@"6":[NSNumber numberWithInteger:2],

@"7":[NSNumber numberWithLong:30],

@"8":[NSNumber numberWithLongLong:3],

@"9":[NSNumber numberWithShort:4],

@"10":[NSNumber numberWithUnsignedChar:'1'],

@"11":[NSNumber numberWithUnsignedInt:3],

@"12":[NSNumber numberWithUnsignedInteger:35],

@"13":[NSNumber numberWithUnsignedLong:45],

@"14":[NSNumber numberWithUnsignedLongLong:59],

@"15":[NSNumber numberWithUnsignedShort:4]

};

for(NSString *key in dic){

id value = [dic valueForKey:key];

if([value isKindOfClass:[NSNumber class]]){

const charchar * pObjCType = [((NSNumber*)value) objCType];

NSLog(@"%@,%s",key,pObjCType);

}

}

以上的输出结果证明:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16
UnsignedChar =>s

Char =>c

UnsignedShort =>i

LongLong =>d

UnsignedInt =>q

Float =>f

Int =>i

UnsignedInteger =>q

Integer =>q

UnsignedLong =>q

Long =>q

LongLong =>q

UnsignedLongLong=>q

Bool =>c

Short =>s

double =>d

再看以下代码,用@encode关键字的

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15
NSLog(@"1=>%s",@encode(BOOL));

NSLog(@"2=>%s",@encode(char));

NSLog(@"3=>%s",@encode(double));

NSLog(@"4=>%s",@encode(float));

NSLog(@"5=>%s",@encode(int));

NSLog(@"6=>%s",@encode(NSInteger));

NSLog(@"7=>%s",@encode(long));

NSLog(@"8=>%s",@encode(long long));

NSLog(@"9=>%s",@encode(short));

NSLog(@"10=>%s",@encode(unsigned char));

NSLog(@"11=>%s",@encode(unsigned int));

NSLog(@"12=>%s",@encode(unsigned long));//unsigned NSInteger

NSLog(@"13=>%s",@encode(unsigned long));

NSLog(@"14=>%s",@encode(unsigned long long));

NSLog(@"15=>%s",@encode(unsigned short));

以上的输出结果证明:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15
BOOL=>c

char=>c

double=>d

float=>f

int=>i

NSInteger=>q

long=>q

long long=>q

short=>s

unsigned char=>C

unsigned int=>I

unsigned NSInteger=>Q

unsigned long=>Q

unsigned long long=>Q

unsigned short=>S

读者可以根据这种方式来判断某个变量到底属于哪种类型。

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 IOS 开发之ObjectiveC的变量类型的字符代表 https://www.kuaiidc.com/90611.html

相关文章

发表评论
暂无评论