Objective-C中的数据类型、常量、变量、运算符与表达式
1、Objective-C中的数据类型:
- Objective-C中的基本数据类型有:int、char(-128-127)、float、double、BOOL,Byte(0-255)
- Id类型相当于(等价与)NSObject *类型
(在iOS中,int类型可使用NSInteger / NSUInteger表示;float / double类型可使用CGFloat表示;后者可以根据系统位数长度[32位/64位]自动选择实际数据类型)
OC中对象数据类型以指针形式表示(例如:NSString *str = @”Hello World!”;)
2、数据类型转换:
- 自动类型转换:将范围小的数据类型值转换到范围大的类型值;
Byte,short,char->int->long->float->double
Byte short char之间不能互相转换,他们三者在计算时首先会转换成int类型
- 强制类型转换:(类型)变量或数值或对象
Byte b1 = 250(160); Byte b2 = 10; Byte b3 = b1 + b2; nslog(@”b3=%d”,b3);
Byte=unsigned char NSinteger CGfloat
Int a = 38;int b = 100; float c = a /b(float c = (float)a/b);
强制类型转换:
int a = ;
int b = ;
float f = (float)a/b; //可以使用"(数据类型)变量 "这种语法强制转换类型,做强制类型转换时,要考虑一下 数据是否会溢出。
NSLog(@"f=%f",f); Byte b = ;//Byte 是oc重定义为Uint 范围是0 - 255 不能赋给负值 BOOL b = YES;//布尔类型有非零既真的说法 所以YES=1 NO=0
3、常量、变量(注意:以及变量的命名规范):
标识符由字母、下划线、$、数字组成:
int a;
int $a;
int _a;
//int 1_a; 错的
int A;
//int if; 错的
//int a*; 错的
8 NSString *str = @"abc";//""是c里的字符串 @""是oc里的字符串
4、运算符与表达式:
- 算数运算符:+、-、*、/、%、++、--
- 比较运算符:==、!=、>、>=、<、<=
- 逻辑运算符:!、&&、||
- 赋值运算符:=、+=、-=、*=、/=、%=
- 运算优先级:
() //运算优先级高
!、*、/、%
+、-
==、!=、>、>=、<、<=
&&、||
+=、-=、*=、/=、%=
= //运算优先级低
5、学习参考网站:
IT综合类网站:
Objective-C中的数据类型、常量、变量、运算符与表达式的更多相关文章
- 速战速决 (1) - PHP: 概述, 常量, 变量, 运算符, 表达式, 控制语句
[源码下载] 速战速决 (1) - PHP: 概述, 常量, 变量, 运算符, 表达式, 控制语句 作者:webabcd 介绍速战速决 之 PHP 概述 常量 变量 运算符 表达式 控制语句 示例1. ...
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- C 数据类型 常量 变量
一 数据类型 1. 什么是数据 生活中时时刻刻都在跟数据打交道 比如体重数据 血压数据 股价数据等 在我们使用计算机的过程中 会接触到各种各样的数据 有文档数据 图片数据 视频数据 还有聊QQ时产生的 ...
- Java 中基本数据类型的变量的转换规则
基本数据类型之间的转换 变量之间的转换规则 布尔型变量在和其他 7 种基本数据类型做运算时,无法转化为其他的数据类型,所以下面所说的运算都是除了布尔型的其他 7 种基本数据类型之间的转换. 1.自动类 ...
- python中的数据类型和常用运算符
一. python中常见的数据类型 1. 整数:任何时候运算都是精确的 2. 浮点数:运算的时候,可能会有四舍五入 3. 字符串:字符串是以单引号'或双引号"括起来的任意文本 1) 同类型的 ...
- Python中的数据类型、变量、字符编码、输入输出、注释
数据类型 number(数字) 用于存储类型,通常分为int.long.float.complex: int:32位机器上占32位,取值范围为-231 ~ 231 - 1:64位机器上占64位,取值范 ...
- JS中的数据类型和变量内存
1. JS中存在5种简单数据类型和1种复杂数据类型: 5种简单数据类型:Undefined, Null, Boolean, Number, String. 1种复杂数据类型:Object. 上面的5种 ...
- javascript中的数据类型和变量
Number JavaScript不区分整数和浮点数,统一用Number表示,以下都是合法的Number类型: 123; // 整数123 0.456; // 浮点数0.456 1.2345e3; / ...
- Ruby学习中(首探数组, 注释, 运算符, 三元表达式, 字符串)
一. 数组 1.定义一个数组 games = ["英雄联盟", "绝地求生", "钢铁雄心"] puts games 2.数组的循环 gam ...
- C语言基础:进制转换,变量,常量,表达式,基本数据类型,输出函数,输入函数,运算符. 分类: iOS学习 c语言基础 2015-06-10 21:39 25人阅读 评论(0) 收藏
二进制:以0b开头,只有0和1两种数字.如0101 十进制:0~9十个数字表示.如25 十六进制:以0~9,A~F表示,以0X开头.如0X2B 十进制转换为X进制:连除倒取余 X进制转换为十进制:按权 ...
随机推荐
- The _imageingft C module is not installed
遇到的问题如图所示,使用的方法: 下载地址:http://effbot.org/downloads 并没有解决,有人用这样的方法成功了,只能说很遗憾,我并没有成功 大神给的解决办法,不要再win平台下 ...
- LeetCode 326
Power of Three Given an integer, write a function to determine if it is a power of three. Follow up: ...
- 【数值方法,水题】UVa 10341 - Solve It
题目链接 题意: 解方程:p ∗ e^(−x) + q ∗ sin(x) + r ∗ cos(x) + s ∗ tan(x) + t ∗ x^2 + u = 0 (0 <= x <= 1) ...
- VSX规划Package文件
VSX是VS扩展,可以针对不同项目编写插件,虽然接触VSX的时间并不多,但是当了解VSX后深刻感受到VSX的魅力. VSX的材料比较少,配置文件也很繁琐,当初我也走了不少弯路. 这篇文章将帮助您更好的 ...
- Ehcache(2.9.x) - API Developer Guide, Write-Through and Write-Behind Caches
About Write-Through and Write-Behind Caches Write-through caching is a caching pattern where writes ...
- RESTful 服务架构风格 * .NET的RESTful框架 OpenRasta
REST 的约束采用的就是掌控 Web 的基本原则.这些原则是: 用户代理与资源交互,任何可命名和表达的事物都可称为资源.每项资源都有一个唯一的统一资源标识符 (URI). 与资源的交互(通过其唯一的 ...
- 开发Android应用 提升性能的小技巧
前 言 2015年,Android OS 目前在手机操作系统的市场占有率已达59%,权威机构预计,Android市场占有率在2016年将达到63%,由于Android的开放性,未来占有率还将不断增加, ...
- Android应用源码基于安卓的校园二手交易系统客户端+服务端+数据库
该源码是校园二手交易系统应用带服务端,也是一个基于安卓和javaweb的校园二手交易系统,包括整套安卓客户端.javaweb服务端.mysql数据库,可以进行基本的列表显示帖子.显示帖子详情.用户注册 ...
- [Entity Framework] MySQL @ Entity Framework 6
原文 [Entity Framework] MySQL @ Entity Framework 6 要让MySQL能够用EF6,我花了一点时间,在此记录一下 安装元件 在设定档加入Provider 安装 ...
- ios开发:代理设计模式
代理是一种简单而功能强大的设计模式,这种模式用于一个对象“代表”另外一个对象去做和实现一些东西. 主对象维护一个代理(delegate)的引用并且在合适的时候向这个代理发送消息,这个消息通知“代理”对 ...