疯狂iOS开发(上)-笔记1

1~4章几乎都是C语言的内容,第四章末尾才开始讲  Objective-C   的内容。


1、LLVM Clang 编译器的语法格式(在  Terminal  中使用)

clang  -fobjc-arc  -framework  <所需依赖的框架>  <源程序>  -o  <生成文件>

说明:

-fobjc-arc:启用ARC功能

-framework  <所需依赖的框架> :指定框架

<源程序>:为   .m   文件(是"点m"文件,下同),可以有多个源文件

<生成文件>:为    .out   文件

举例:

clang  -fobjc-arc  -framework  Foundation  HelloWorld.m  -o  hello.out

//如果没有错误将会自动生成可执行文件   hello.out

//然后运行  hello.out  程序将会打印输出

./hello.out




2、图标含义:

C:class

P:property

f :function

Pr :protocol

M:method



3、遇到的问题

 //2015/6/3
        NSString *str = @"hello";
        NSString *str2 = [str copy];
        NSString *str3 = str;
        NSLog(@"%p", str);               // %p操作的以十六进制形式输出指针变量所代表的地址值
        NSLog(@"%p", str2);
        NSLog(@"%p", str3);
//输出结果为

2015-06-03 19:43:19.720 Test[6459:303] 0x1000020c0
2015-06-03 19:43:19.726 Test[6459:303] 0x1000020c0
2015-06-03 19:43:19.727 Test[6459:303] 0x1000020c0

为什么  str2  指向的是同一块内存? 理论上  copy  操作,不是应该分配一块新的内存地址才对么?为什么是浅拷贝?



4、遇到的问题

     ①   float a = 10.2;
           NSLog(@"%10.10f", a);

//输出结果为

2015-06-03 20:00:32.725 Test[6529:303] 10.1999998093 

如果把上述改一下,改为:

      ②  float a = 10.2;
           NSLog(@"%10.10f", a);

//输出结果为

2015-06-03 20:03:52.156 Test[6569:303]  10.200000

再改一下,改为:

       ③  float a = 1234.2;
            NSLog(@"%.6f", a);

//输出结果为

2015-06-03 20:06:04.367 Test[6614:303] 1234.199951

貌似在学C语言的时候学过,应该是  float  类型只接受  6  位有效数字,具体忘了是什么原因了!!!!

补充:(输出时在一个数字前自动补0)

         int  b = 10;

         NSLog(@"%05d", b);    // 具体格式为   %0nd   n代表输出的总位数

//输出结果为

2015-06-03 20:15:51.471 Test[6682:303] 00010



5、inf  代表正无穷大   // 源自单词   infinity

    -inf  代表负无穷大

浮点数除以  0.0  才可以得到正无穷大(inf)或者负无穷大(-inf),如果使用整型值除以  0.0   则会得到整数取值范围的边界值。

比如,  int   型的正整数除以  0.0   将会得到   2147483647,相反,如果   int   型的负数除以   0.0   则会得到   -2147483648.



6、求一个数组的长度(不是数组的有效长度)可以用公式:   sizeof(数组名) /   sizeof(数组变量[0])

说明:sizeof(数组名)返回整个数组占用的字节数,sizeof(数组变量[0])返回第一个数组元素占用的字节数,相除的结果就是数组元素的个数。

但是,这也可能会引发错误,比如分配了一个数组  array[100] = { 1 , 2 ,3 },虽然大小为100,但是有效的元素只有  3  个,而运用该公式,得到的长度则为 100 。所以得适当的使用它。

           









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值