iOS开发-OC语言 (一)oc数据类型
分享一套以前学习iOS开发时学习整理的资料,后面整套持续更新:
oc数据类型
数据类型:基本数据类型、指针数据类型
基本数据类型:数值型、字符型(char)、布尔型、空类型(void)
指针数据类型:类(class)、id
数值型:整数类型int、浮点型float、double
c和oc的基本数据类型
int:声明整型变量
double:声明双精度变量
float:声明浮点型变量
char:声明字符型变量
id:通用的指针类型
enum:声明枚举类型
long:声明长整型变量或函数
short:声明短整型变量或函数
signed:声明有符号类型变量
struct:声明结构体变量
union:声明共用体(联合)数据类型
unsigned:声明无符号类型变量
void:声明函数无返回值或无参数
数据类型格式化说明符
数据类型 oc关键字 格式说明引导符
整型 int %d.%i
短整型 short int %hd.%hi
长类型 long int %ld.%li
无符号短整型 unsigned int %u
无短整型 unsigned short %hu
无符号长整型 unsigned long %lu
浮点型 float %f
双精度型 double %f
长双精度型 long double %lf
字符型 char %c
具体的数据类型
整数类型
oc中整数类型用int来表示,格式化符号用%i或%d来表示
比如:int a=100;
oc语言的整型常量默认为int型,声明long型常量可以后加“l”或“L”,如:
int b=600;//long c=888888888L;
类型 占用存储空间 值域范围
Byte 1个字节 -128—127
short 2个字节 -2′15—2′15-1
int 4个字节 -2′31—2′31-1
long 8个字节 -2′63—2′63-1
注释:2‘63为2的63次方
浮点类型
浮点类型的变量可以存储包括小数的值
oc中有两种浮点类型
·float 有效数字为6-7位 格式化说明符号用%f表示
·double 有效数字为15-16位 格式化说明符号用%f.%e或%g表示
oc中浮点型常量默认为double型,如果要声明一个常量为float,在数字的后面加f或F
例如:double m=3.14159;//正确 float f=3.14f;
类型 占用存储空间 值域范围
float 4字节 -3.403E38
double 8字节 -1.798E308—1.798E
字符串char
char型数据用来表示通常意义上的“字符”,格式化说明符用%c表示
字符常量为用单引号括起来的单个字符,
例如:char achar='a';char b='0';char cChar='苹';值域范围:-128—127
"\n"、oc编译器把这个当做单个字符
unsigned char 值域范围:0~255
oc字符采用Unicode编码,每个字符占两个字节,因而可用十六进制编码形式表示,
例如:char c1='\u0061';
注:Unicode是全球语言统一编码
逻辑型Boolean(布尔型)
Boolean类型指的是用于存储真值和假值的变量,一般用于程序流程控制。
Boolean类型数据允许取值true或false,也可以是0或非0的整数代替true和false,这点和java语言不同。
实例:
Boolean flag=true
if(flag)
{
NSLog(@"hello iphone");
}
限定词
·long int:声明变量XX为long的整型变量,格式化符号为¥%li,如:long int a;
·long long int:声明变量XX为long long的整型变量,格式符号位%lli,如:long long int b;
·long double:跟int基本相同;
·unsigned int:声明无符号的整型变量,如:unsigned int c;
·signed int:声明有符号的整型变量。如:signed int d。
void类型(空类型)
告诉编译器没有任何范围类型的值
不能像其他数据类型一样来声明变量
例如:void i=10;//错误
void通常与方法一起搭配使用,比如:
-(void)test
{
//code
}
id类型
id类型是oc中独有的数据类型,它可以存储任何类型的对象,从某种意义上说,它就是一般的对象类型。
·将number声明为id类型的变量,
如:id number;
·格式化说明符:%p
iOS开发-OC语言 (一)oc数据类型的更多相关文章
- Android &Swift iOS开发:语言与框架对比
转载自:http://www.infoq.com/cn/articles/from-android-to-swift-ios?utm_campaign=rightbar_v2&utm_sour ...
- 李洪强漫谈iOS开发[C语言-043]-判断较早日期
李洪强漫谈iOS开发[C语言-043]-判断较早日期
- 李洪强漫谈iOS开发[C语言-043]-练习
李洪强漫谈iOS开发[C语言-043]-行李重量计算价格
- 李洪强漫谈iOS开发[C语言-042]-简单计算器
李洪强漫谈iOS开发[C语言-042]-简单计算器
- 李洪强漫谈iOS开发[C语言-041]-计算月份天数
李洪强漫谈iOS开发[C语言-041]-计算月份天数
- 李洪强漫谈iOS开发[C语言-040]-switch case
李洪强漫谈iOS开发[C语言-039]-switch case 补充:
- 李洪强漫谈iOS开发[C语言-039]-剪刀石头布
李洪强漫谈iOS开发[C语言-039]-剪刀石头布
- 李洪强漫谈iOS开发[C语言-038]-if else if语句
李洪强漫谈iOS开发[C语言-038]-if else if语句
- 李洪强漫谈iOS开发[C语言-037]-if else 语句
李洪强漫谈iOS开发[C语言-037]-if else 语句
- 李洪强漫谈iOS开发[C语言-044]-翻译数字
李洪强漫谈iOS开发[C语言-044]-翻译数字
随机推荐
- js获取最近几天的日期(转载)
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- Singal Page App:使用Knockout和RequireJS创建高度模块化的单页应用引擎
Singal Page App 开篇扯淡 距离上一篇文章已经有好几个月,也不是没有时间记录点东西,主要是换了新的工作,在一家外资工作,目前的工作内容大多都是前端开发,新接触的东西因为时间原因,大多还不 ...
- rem测试用实现移动端自适应页面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Bootstrap 布局
bootstrap提供的布局主要有两种,固定布局和流动布局. Bootstrap 固定布局 用法 <body> <div class="container"> ...
- 登陆页面改为SSO验证
登陆页面改为SSO验证 单点登录(SSO,single sign-on)是一个会话或用户身份验证过程,用户只需要登录一次就可以访问所有相互信任的应用系统,二次登录时无需重新输入用户名和密码.简化账号登 ...
- 大数据和Hadoop生态圈
大数据和Hadoop生态圈 一.前言: 非常感谢Hadoop专业解决方案群:313702010,兄弟们的大力支持,在此说一声辛苦了,经过两周的努力,已经有啦初步的成果,目前第1章 大数据和Hadoop ...
- C#版考题
某软件大赛C#版考题整理——[单选题] 一.单选题(10小题共20.0分) 1. 以下JavaScript代码的正确输出结果是:(). 1 2 3 4 5 6 7 8 9 <script t ...
- MvcMovieStore实例 教程
转原创:MvcMovieStore 实例教程(新概念版:mvc5.0,EF6.01)-初露锋芒 如需转载,请注明出处:http://www.cnblogs.com/DoduNet/ 最近趁业余时间,把 ...
- IOS学习之路五(代码实现UITableView)
先展示一下运行结果: 代码实现: 1.先创建一个空项目: 2.创建一个Controller:(TableViewController) 在AppDelegate.h中声明属性: // AppDele ...
- IOS学习之路六(UITableView滑动删除指定行)
滑动删除指定行代码如下: Controller.h文件 #import <UIKit/UIKit.h> @interface TableViewController : UIViewCon ...