OC学习笔记四 数据类型
为什么80%的码农都做不了架构师?>>>
Objective-C 的基本数据类型为 int float double char
1.int类型
数据常量由一个或多个数字的系列组成,系类前的负号表示该值是一个负值
2.float类型
float类型可以存储包含小数位的值,要区分浮点常量,可以看是否包含小数点。可以通过NSLog %s %g 进行转换。也可以使用科学计数法。1.7e4表示 1.7* 10 4
3.double类型
double类型和float 相似,可存储的范围是float 的两倍
4.chart 类型
chart可存储当个字符。
例如:
int main (int argc,char * argv[])
{@autoreleasepool{int integerVar=100;float floatVar=331.2;double doubleVar=8.44e+11;char charVar = 'W';NSLog(@"integerVar=%i",integerVar);NSLog(@"floatVar=%f",floatVar);NSLog(@"doubleVar=%e",doubleVar);NSLog(@"doubleVar=%g",doubleVar);NSLog(@"integerVar=%c",charVar);
}}
二 限定词
Objective-c 有以下限定词:long ,long long , short , unsigned signed
1.long
把限定词long 放在int 前面,所申明的整形变量在某些计算机上具有扩展的值域。
例子:
long int factorial;
这条语句讲factorial申明为long的整形变量,long 变量的具体范围是由系统而定,在许多系统上,int与long int具有相同的值域,而且任何一个都能存储4个字节(1个字节8位),32位宽(2,147,483,647)的整型值。long在限定整型的时候,实际相当于双精度的short。
2.long long
双长整型相当于双精度long。
例子:
long long int factorial;
变量具有特定扩展精度的双长整型变量,该扩展精度保证变量至少8个字节,具有64位的宽度
3.short
把限定词short放在int声明之前时,它告诉Objective-C编译器要声明的特定变量用来存储相当小的整数。之所以使用short变量,主要原因是对节约内存空间的考虑,当程序员需要大量内存而可用的内存量又十分有限时,比如iPhone开发的时候,就可用short变量来解决这个问题。short int占用的内存空间是常规int变量所占空间的一半。在任何情况下,确保分配给short int的空间数量不少于2个字节,16位。
4. unsigned
顾名思义,这个最终限定词就是无符号,可放在int变量之前,当整数变量只用来存储正数的情况下使用最终限定符。以下语句
unsigned int factorial;
向编译器声明:变量factorial 只用来保存正值。通过限制整型变量的使用,使它专门存储正整数,可以扩展整型变量的精度。一般unsigned int可简写为uint。
5.signed
signed限定词可明确地告诉编译器特定变量是有符号的。它主要用在char声明前面,
简写:
将变量声明为long int,short int或unsigned int类型时,关键字int 可以省略。
long factorial;
short factorial;
unsigned factorial;
三 ID 类型
ID 类型可以储存类型的对象,可以认为是一般对象类型,它是多态和动态邦定的基础。
例如:
id graphicObject
将 graphicObject 申明为id类型的变量,可以将 方法的返回值为 id
-(id) newObject:(int):type;
方法名为newObject,参数是type,返回值为i
转载于:https://my.oschina.net/wolx/blog/317174
OC学习笔记四 数据类型相关推荐
- python学习笔记四——数据类型
1.数字类型: 2.字符串类型: 切片:a[m:n:s] m:起始值 n:结束值(不包括n) s:步长,负数表示从后向前取值 3.序列:列表,元组和字符串都是序列 序列的两个主要特点是索引操作 ...
- mysql新增表字段回滚_MySql学习笔记四
MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...
- ROS学习笔记四:理解ROS节点
ROS学习笔记四:理解ROS节点 本节主要介绍ROS图形概念,讨论ROS命令行工具roscore.rosnode和rosrun. 要求 要求已经在Linux系统中安装一个学习用的ros软件包例子: s ...
- pythonsze_python学习笔记二 数据类型(基础篇)
Python基础 对于Python,一切事物都是对象,对象基于类创建 不同类型的类可以创造出字符串,数字,列表这样的对象,比如"koka".24.['北京', '上海', '深圳' ...
- 华清远见fs4412开发板学习笔记(四)
fs4412开发板学习笔记(四) 今天的课程安排 1.复习 1.1 VIM 编辑器 [1] vim + filename 打开 [2] 工作模式 命令模式 编辑模式 底行模式 [3] 模式切换 命令- ...
- C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- 判断题:oracle自带的sql语言环境是pl/sql,Oracle之PL/SQL学习笔记之数据类型(三)
Oracle之PL/SQL学习笔记之数据类型(三) 所有的编程语言中变量是使用最频繁的.PL/SQL作为一个面向过程的数据库编程语言同样少不了变量,利用变量可以把PL/SQL块需要的参数传递进来,做到 ...
- RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决)
RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) 参考文章: (1)RabbitMQ学习笔记四:RabbitMQ命令(附疑难问题解决) (2)https://www.cnblogs. ...
- JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档
POI操作excel的确很优秀,操作word的功能却不敢令人恭维.我们可以利用iText生成rtf文档,扩展名使用doc即可. 使用iText生成rtf,除了iText的包外,还需要额外的一个支持rt ...
最新文章
- TPU 3.0,Android P...Google带来了哪些惊喜?
- redis 一主二从
- mysql limit优化_MySQL:教你学会如何做性能分析与查询优化
- 知识图谱 (知识计算推理)
- Visual Studio 2017开发linux程序使用实例及原理简析
- OpenCV图像金字塔pyrDown和pyrUp的实例(附完整代码)
- VS Code Remote 发布!开启远程开发新时代
- linux php ldap_linux php ldap安装配置的方法
- (转)阿里云CentOS 7下配置及使用mysql
- Mysql 简介和创建新的数据库
- CSS三角强化的巧妙运用(HTML、CSS)
- VS2010打开项目时弹出错误提示。。。VisualStudio\10.0\ActivityLog.
- js实现签名功能(vue中使用电子签名)
- 计算机中的没有文件怎么处理方法,电脑重启后桌面上文件没有了怎么办
- PostScript语言教程(六、图形变换)
- 登陆器生成登陆器不显示服务器列表,GeeM2单机登录器读取不到列表怎么办?
- Mac恢复系统更新命令
- 名片管理系统java_java毕业设计_springboot框架的名片管理系统
- CSS选择器分类(有例子非常全)
- pe下找不到ssd硬盘_快启动PE中没有识别到固态硬盘的解决方法
热门文章
- python中的raw_input() 与 input() 比较
- Understanding Bootstrap Of Oracle Database
- 15种TBProAudio音乐插件合集包 2021最新
- 如何自定义设置Mac OS系统和windows系统键盘的方法
- spring-tool-suite(STS) 创建 spring boot项目
- iOS自动打开闪光灯
- 《社交网站界面设计(原书第2版)》——3.6 指纹或Bio指纹
- 图形化升级单机oracle 11.2.0.1 到 11.2.0.4
- nodejs基础 -- 全局对象
- 程序员应该具备的12种能力