Objective-C基本数据类型、表达式和语句
一。基本数据类型
1.一般的计算机语言在定义变量的时候,需要提供给两个内容:类型和名字。
比如:int myClassID;
2.在Xcode中,无论你使用的是GCC编译器还是LLVM编译器,如果我们没有为整型变量的值进行初始化,在编译的过程中,编译器都会自动为其附上值0.
3.整数类型:三种。int、short、long。
浮点数类型:两种:float、double。
字符类型:一种:char。
指针类型:*。所谓的指针变量即明确地指向一个内容地址。
结构体:struct。
二。命名规则
1.计算机的世界中不存在无名氏,即使那些由于开发者疏忽造成的“孤魂野鬼”编译器在编译的时候也一定会为他们附上特殊的名字。
2.命名错误
3.命名规范:
a。在C语言中,“匈牙利命名法”广受开发者的喜爱。规则:变量名=变量特性+变量类型+描述。
b。OC的属性存取特性:类成员变量一般会命名成:_+描述。
c。变量名的“描述”部分,我们一般采用驼峰式命名法,即每个单词的首字母大写,但是OC中变量名的第一位一般需要小写。
比如:NSString *strUnitTestResult;
NSString *unitTestResult;
而用下划线区别单词的驼峰命名法在OC中使用得相对较少。如:NSString *unit_Test_Result;
4.命名空间
b。在C++语言中,为了区分相同的命名而采用namespace机制。这样,我们就可以将本地的工程命名为一个组,将其他团队的库命名为一个组,将第三方库命名为一个组,当调用某个元素的时候,我们不仅需要提供元素的名字,还要带上元素所在的组。
c。对于C和OC,不采用namespace的机制,但是我们可以在元素命名时为名字加上不同的前缀,一样可以达到namespace的作用。
如:当在定义定义一些全局可见的变量时,往往也会以“前缀”的方式来表明唯一性。
像:
enum{
kTestDomainErrParam,
kTestDomainErrPipe,
kTestDomainErrFile,
};
枚举器中的变量定义了kTestDomain为它的前缀。
三。表达式
1.算术运算符
2.比较运算符
3.逻辑运算符
4.位运算符
四。语句
Objective-C基本数据类型、表达式和语句的更多相关文章
- Java代码三级跳——表达式、语句和代码块
Java代码三级跳—表达式.语句和代码块 表达式(expression):Java中最基本的一个运算.比如一个加法运算表达式.1+2是一个表达式,a+b也是. 语句(statement):类似于平时说 ...
- 【.net 深呼吸】细说CodeDom(2):表达式、语句
在上一篇文章中,老周厚着脸皮给大伙介绍了代码文档的基本结构,以及一些代码对象与CodeDom类型的对应关系. 在评论中老周看到有朋友提到了 Emit,那老周就顺便提一下.严格上说,Emit并不是针对代 ...
- C Primer Plus_第5章_运算符、表达式和语句_编程练习
Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; ...
- JavaScript学习笔记-表达式和语句
表达式和语句 eval( ) 只有一个参数 参数非字符串时,直接返回这个参数: 参数为字符串时,它把字符串当成JavaScript代码进行编译,编译失败则抛出语法错误,编译成功则执行代码,并返回最后一 ...
- 小猪猪C++笔记基础篇(五)表达式、语句
小猪猪C++笔记基础篇(五) 关键词:表达式.语句 本章的内容比较简单,基本上没有什么理解上的困难,都是知识上的问题.先开始想要不要写呢,本来是不准备写的,但是既然读了书就要做笔记,还是写一写,毕竟还 ...
- C--运算符,表达式和语句实例
//第五章 运算符,表达式和语句 #include<stdio.h> //引入头文件 #include<math.h> #define ADJUST 7.64 //定义常量 # ...
- C#表达式和语句
表达式由操作数 (operand) 和运算符 (operator) 构成.表达式的运算符指示对操作数适用什么样的运算.运算符的示例包括+.-.*./ 和 new.操作数的示例包括文本.字段.局部变量和 ...
- C# - 表达式与语句
表达式与语句(Expression&Statement) 操作数(Operands) 1.数字.2.字符.3.变量.4.类型.5.对象.6.方法 操作符(Operator) 参考:C# - 操 ...
- C语言之运算符、表达式和语句
#include<stdio.h> #define ADJUST 7.31 int main(void) { const double SCALE = 0.333; double shoe ...
- js 表达式与语句
引子:表达式和语句很基础,但是有时会犯错,比如: function(){}//报错 (function(){})//不报错 function f(x){ return x + 1 }()//报错 fu ...
随机推荐
- http 303 307 302 状态码理解
最近在看 <<the rails4 way>> 书中提到了这几个状态码,网上搜到几篇文章 http://www.cnblogs.com/cswuyg/p/3871976.htm ...
- Dynamics CRM 2011 权限管理(转)
http://www.cnblogs.com/LeoTang/p/3344265.html Dynamics CRM 2011 权限管理 CRM系统基于角色的权限主要通过部门.角色.用户.团队来 进行 ...
- oracle—无法启动
pl/sql连接oracle,出现下列错误,即没有启动该数据库的监听程序 启动该数据库的监听程序,出现如下错误,即未配置监听器 配置监听器
- java 反射技术
什么是反射?反射就是将字节码中的各种成分映射到相应的java类中来,java反射技术自JDK1.1以来就出现了,目前大多数流行的框架都采用了这种技术,可见其重要性,这篇文章将详细介绍我对java反射技 ...
- 使用commons-codec包加密字符串(MD5,SHA1,BASE64)
1. [代码]MD5 String str = "abc"; DigestUtils.md5Hex(str); //附.net生成MD5的方法,生成内容跟java一致: Strin ...
- mysql 非安装版本就可以用, 用于打包用
http://blog.csdn.net/iihero/article/details/5596401 http://blog.csdn.net/iihero/article/details/5596 ...
- php读取目录及子目录下所有文件名的方法
本文实例讲述了php读取目录及子目录下所有文件名的方法,分享给大家供大家参考.具体实现方法如下: 一般来说php中读取目录下的文件名的方式确实不少,最简单的是scandir,具体代码如下: $dir= ...
- 翻译:Knockout 快速上手 - 5: 你需要知道的顶级特性 续
Utilities Knockout 提供了许多可以你开发中使用的工具,你可以在 ko.utils 命名空间中找到它们,我最喜欢的工具如下所示: extend: 这个方法将两个对象合并在一起,调用这个 ...
- 关于 profile文件(转)
登录shell执行了两个特殊文件, 1个是:\etc\profile, 这个文件由系统管理员设置,通常做一些如检查是否有邮件,设置默认的创建文件的掩码,给某些表转到处变量赋值,已经任何管理员希望每当用 ...
- Debian的一个命令
dpkg是一个Debian的一个命令行工具,它可以用来安装.删除.构建和管理Debian的软件包.下面是它的一些命令解释:1)安装软件命令行:dpkg -i <.deb file name> ...