分享一套以前学习iOS开发时学习整理的资料,后面整套持续更新:

oc数据类型

数据类型:基本数据类型、指针数据类型

基本数据类型:数值型、字符型(char)、布尔型、空类型(void)

指针数据类型:类(class)、id

数值型:整数类型int、浮点型float、double

coc的基本数据类型

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数据类型的更多相关文章

  1. Android &Swift iOS开发:语言与框架对比

    转载自:http://www.infoq.com/cn/articles/from-android-to-swift-ios?utm_campaign=rightbar_v2&utm_sour ...

  2. 李洪强漫谈iOS开发[C语言-043]-判断较早日期

    李洪强漫谈iOS开发[C语言-043]-判断较早日期

  3. 李洪强漫谈iOS开发[C语言-043]-练习

    李洪强漫谈iOS开发[C语言-043]-行李重量计算价格

  4. 李洪强漫谈iOS开发[C语言-042]-简单计算器

    李洪强漫谈iOS开发[C语言-042]-简单计算器

  5. 李洪强漫谈iOS开发[C语言-041]-计算月份天数

    李洪强漫谈iOS开发[C语言-041]-计算月份天数 

  6. 李洪强漫谈iOS开发[C语言-040]-switch case

    李洪强漫谈iOS开发[C语言-039]-switch case 补充:

  7. 李洪强漫谈iOS开发[C语言-039]-剪刀石头布

     李洪强漫谈iOS开发[C语言-039]-剪刀石头布

  8. 李洪强漫谈iOS开发[C语言-038]-if else if语句

    李洪强漫谈iOS开发[C语言-038]-if else if语句

  9. 李洪强漫谈iOS开发[C语言-037]-if else 语句

    李洪强漫谈iOS开发[C语言-037]-if else 语句

  10. 李洪强漫谈iOS开发[C语言-044]-翻译数字

     李洪强漫谈iOS开发[C语言-044]-翻译数字

随机推荐

  1. leetcode第20题--Valid Parentheses

    Problem: Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if ...

  2. Oracle 跨库 查询 复制表数据 分布式查询

    方法一: 在眼下绝大部分数据库有分布式查询的须要.以下简单的介绍怎样在oracle中配置实现跨库訪问. 比方如今有2个数据库服务器,安装了2个数据库.数据库server A和B.如今来实如今A库中訪问 ...

  3. MVC文件上传与下载

    MVC文件上传与下载 MVC文件上传与下载 想想自己从毕业到工作也有一年多,以前公司的任务的比较重,项目中有的时候需要用到什么东西都去搜索一下,基础知识感觉还没有以前在学校中的好.最近开始写博客,真的 ...

  4. POI操作EXCEL之导出Excel(设置有效性,下拉列表引用)

    本人使用的是poi-bin-3.10-FINAL-20140208.zip 版本的poi以下是程序关键代码: //需要引用的类 import java.io.File; import java.io. ...

  5. java 命令笔记

    http://www.hollischuang.com/archives/105 JPS jps位于jdk的bin目录下,其作用是显示当前系统的java进程情况,及其id号. jps相当于Solari ...

  6. usaco1.1.1Your Ride Is Here(入门题)

    一下是我很久很久之前刷的题目...随便扔在这里啦.. Description 一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO.这些不明飞行物时常来收集来自在地球上忠诚的支持者.不幸的是,他们 ...

  7. OpenStack调研

    OpenStack调研:OpenStack是什么.版本演变.组件关系(Havana).同类产品及个人感想 一点调研资料,比较浅,只是觉得部分内容比较有用,记在这里: 首先,关于云计算,要理解什么是SA ...

  8. 企业架构研究总结(43)——企业架构与建模之ArchiMate详述(下)

    2.7 关系模型元素 企业架构模型包括了各种概念元素以及他们之间的关系,这其中的概念元素已经在前面几节中进行了阐述,而这些概念元素之间的关系则是本节的叙述重点.虽然ArchiMate中具有种类繁多的概 ...

  9. 长度为n的数组,有一个数重复出现了n/2+1次,找出(三种方法)

    问题: 长度为n的数组,有一个数重复出现了n/2+1次,找出这个数:   解决: 比较直接的思路是遍历每个元素,让其与剩下其他元素比较,相等一次计数器sum++,直到sum=n/2+1为止: #inc ...

  10. [C#、winform] FormDesigner.cs报错The variable 'xxxxxx' is either undeclared or was never assigned

    背景: 我写了一个App.config配置文件,在里面定义了模块: <add key="key1" value="std1|std2|std3|std4" ...