Object-C 1.0 第二章
1. 输出obc
#import <Foundation/Foundation.h>
int main(int argc,const char *argv[])
{
NSLog(@"Hello obc");
return 0;
}
2. 说明
C语言使用#include语句通知编译器应在头文件中查询定义。
Objective-C使用头文件来包含元素声明,这些元素包含结构体、符号常量、函数模型等
#import 可保证头文件只被包含一次,而不论此命令实际上在那个文件中出现了多少次。
#import <Foundation/Foundation.h> 语句告诉编译器查看Foundation框架中的Foundation.h头文件
框架是一种聚集在一个单元的部件集合,包含头文件、库、图像、声音文件等。
如果你想知道Foundation框架包含了哪些头文件,可以查看其Headers目录(System/Library/FrameWorks/Foundation.framework/Header/)
NSLog(@"Hello World"); 双引号中的字符串前有一个@符号,表示引用的字符串应该作为Cocoa的NSString元素处理。
NSString的一些功能:
1.告知其长度
2.将自身与其他字符串比较
3.将自身转换为整型值或浮点值
布尔类型 : 指的是存储真值和假值的变量
BOOL 它具有YES和NO值
使用NSLog()输出任意对象的值时,都会使用%@格式说明。在使用这个说明符时,对象通过一个名为description的方法提供自己的NSLog()格式。NSString的description方法可简单输出字符串中的字符。
import <Foundation/Foundation.h> // 告诉编译器查看Foundation框架中的Foundation.h头文件
NSLog(@"Hello Object-C!"); // 可以接收一个字符串作为其第一个参数,该字符串可包含格式说明符(如%d)。此函数喊可以接受匹配格式说明符的其他参数,添加了新的特性,如时间戳。日期戳等 NS表示函数来自Cocoa而不是其他工具包 ,@ 符号是Object-C在标准C语言基础上添加的特性之一,表示引用的字符串应该作为Cocoa的NSString元素来处理。
声明一个对象的时候 const char *words[4] ={"aaaaa","bbbbbb","ccccccc","ddddddd"}; 表示声明一个char类型的对象常量
布尔类型
Object-C的BOOL类型和C语言的bool类型可以在同一个程序中共存,但在编写Cocoa代码时要使用BOOL
Object-C中的BOOL实际上是一种对带符号的字符类型(signed char)的定义(typedef)8位存储空间,YES为1,No为0(使用#define) ;
绝不要直接将BOOL值和YES比较,因为Object-C中的1不等于YES
但是可以使用返回值为No的函数 因为C语言中假值就是0
使用NSLog()输出任意对象的值时,都会使用 %@ 格式说明。在使用这个说明符时,对象通过一个名为description的方法提供自己的NSLog()格式,NSString的description方法可简单输出字符串中的字符
Object-C 1.0 第二章的更多相关文章
- Python黑帽编程 2.0 第二章概述
Python黑帽编程 2.0 第二章概述 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一 ...
- Effective Objective-C 2.0 — 第二章 对象、消息、运行期 - 第六条:理解“属性”这一概念
开发者通过对象来 存储并传递数据. 在对象之间传递数据并执行任务的过程就叫做“消息传递”. 这两条特性的工作原理? Objective-C运行期环境(Objective-C runtime) ,提供了 ...
- 《驾驭Core Data》 第二章 Core Data入门
本文由海水的味道编译整理,请勿转载,请勿用于商业用途. 当前版本号:0.4.0 第二章 Core Data入门 本章将讲解Core Data框架中涉及的基本概念,以及一个简单的Core Data ...
- Laxcus大数据管理系统2.0(5)- 第二章 数据组织
第二章 数据组织 在数据的组织结构设计上,Laxcus严格遵循数据和数据描述分离的原则,这个理念与关系数据库完全一致.在此基础上,为了保证大规模数据存取和计算的需要,我们设计了大量新的数据处理技术.同 ...
- 微信小程序教学第二章:小程序中级实战教程之预备篇 - 项目结构设计 |基于最新版1.0开发者工具
iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:<iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享>. ...
- C# Language Specification 5.0 (翻译)第二章 词法结构
程序 C# 程序(program)由至少一个源文件(source files)组成,其正式称谓为编译单元(compilation units)[1].每个源文件都是有序的 Unicode 字符序列.源 ...
- Laxcus大数据操作系统2.0(5)- 第二章 数据组织
第二章 数据组织 在数据的组织结构设计上,Laxcus严格遵循数据和数据描述分离的原则,这个理念与关系数据库完全一致.在此基础上,为了保证大规模数据存取和计算的需要,我们设计了大量新的数据处理技术.同 ...
- 精通Web Analytics 2.0 (4) 第二章:选择你的网络分析灵魂伴侣的最佳策略
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第二章:选择你的网络分析灵魂伴侣的最佳策略 在Web Analytics 2.0的新世界秩序中,您必须跳出"单一真理来 ...
- Gradle2.0用户指南翻译——第二章. 概述
翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc本文翻译所在分支:https://github.com/msdx/gradledoc/tree/2 ...
随机推荐
- epoll ET模式陷阱分析
0. 前言 这篇文章主要记录在使用epoll实现NIO接入时所遇到的问题. 1. epoll简介 epoll是Linux下提供的NIO,其主要有两种模式,ET(Edge trige)和LT(Level ...
- [NHibernate]Nhibernate如何映射sqlserver中image字段
概述 有这样一个需求需要管理企业内网的信息,包括图标和链接.考虑到图标也不是很大所以就将图片直接保存在数据库中了. 但是用到Nhibernate,如何映射呢? Table 5.5. Large Obj ...
- jQuery如何退出each循环的?
试问:jQuery是如何退出each循环的? 在回调函数里return false即可,大多数jQuery的方法都是如此的. 返回 'false' , 将停止循环 (就像在普通的循环中使用 'bre ...
- Linux C 字符串函数 strlen()、strcat()、strncat()、strcmp()、strncmp()、strcpy()、strncpy() 详解
strlen(返回字符串长度) 表头文件 #include <string.h> 定义函数 size_t strlen(const char *s); 函数说明 strlen()用来计 ...
- Linux进程间通信(三):匿名管道 popen()、pclose()、pipe()、close()、dup()、dup2()
在前面,介绍了一种进程间的通信方式:使用信号,我们创建通知事件,并通过它引起响应,但传递的信息只是一个信号值.这里将介绍另一种进程间通信的方式——匿名管道,通过它进程间可以交换更多有用的数据. 一.什 ...
- WebService -- Java 实现之 CXF (初体验)
1. 认识WebService 简而言之,她就是:一种跨编程语言以及操作系统的远程调用技术. 大家都可以根据定义好的规范和接口进行开发,尽管各自的使用的开发语言和操作系统有所不同,但是由于都遵循统一的 ...
- EL表达式获取数据的方式
<%@page import="cn.jiemoxiaodi.domain.Person"%> <%@ page language="java" ...
- MySQL5.6 新特性之GTID
背景: MySQL5.6在5.5的基础上增加了一些改进,本文章先对其中一个一个比较大的改进"GTID"进行说明. 概念: GTID即全局事务ID(global transactio ...
- nfs部署和优化
nfs--网络文件系统 1.说明:允许一个系统在网络上与他人共享目录和文件 2.好处:通过nfs服务,就可以让这个机器访问远程的文件,像访问自己的文件一样,属于cs通信 3.原理说明:假设有A,B ...
- 响应式字体(js控制)
window.onload=function(x){if ('addEventListener' in document) {document.addEventListener('DOMContent ...