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
|
读者可以根据这种方式来判断某个变量到底属于哪种类型。
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
猜你喜欢
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
- 个人网站服务器域名解析设置指南:从购买到绑定全流程 2025-06-10
- 个人网站搭建:如何挑选具有弹性扩展能力的服务器? 2025-06-10
- 个人服务器网站搭建:如何选择适合自己的建站程序或框架? 2025-06-10
TA的动态
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
您的支持,是我们最大的动力!
热门文章
-
2025-05-29 28
-
2025-05-25 82
-
2025-05-25 91
-
2025-05-29 103
-
2025-05-27 95
热门评论