zoukankan      html  css  js  c++  java
  • 第一个OC程序

      1 #import <Foundation/Foundation.h>
      2
      3 int main(int argc, const char * argv[])
      4 {
      5
      6 @autoreleasepool {
      7
      8 // insert code here...
      9 NSLog(@"Hello, World!");
      10
      11 }
      12 return 0;
      13 }

    1.程序的入口点:main函数
    2.@autoreleasepool:
      OC是不支持垃圾回收的,需要开发人员编写代码来释放对象所占用的内存。
      @autoreleasepool{},这是跟内存管理有关的,以后的OC代码都写在@autoreleasepool的{}内部。
    3.NSLog:
      1> 第9行的NSLog是一个日志输出函数,它可以将传入的OC字符串参数输出到控制台上。
      2> 函数参数@"Hello, Wolrd!"是一个OC字符串,并不是C语言字符串,所有OC字符串的前面都有个@。
      3> 第9行代码NSLog(@"Hello, World!");输出完毕后自动换行。
      4> NSLog也可以像C语言的printf函数一样支持格式符
        1 int age = 10;
        2 NSLog(@"My age is %i and height is %.2f", age, 1.55f);
          * %i表示接收整型数据
          * %f表示接收浮点型数据,%.2f表示保留2位小数
          * 输出结果:
            2013-04-06 17:43:07.380 第一个OC程序[693:303] My age is 10 and height is 1.55
    4.#import:
      1> #import是一个预处理指令,作用跟C语言的#include类似,都是 包含(拷贝)某个文件的内容 到 预处理指令所在的位置。
      2> 第1行的#import <Foundation/Foundation.h>表示包含Foundation框架中的Foundation.h文件。
        1) Foundation框架中包含了很多常用的类和函数,比如字符串处理类NSString、日志输出函数NSLog。它的重要程度相当于Java中的java.lang.*
        2) Foundation框架和Foundation.h文件的位置:Frameworks目录下。
      3> 我在C语言专题的第三讲说过:.h称为头文件,一般用来声明一些函数,想要使用这些函数,就必须用#include包含函数所在的头文件。我们在第9行中使用的NSLog函数存在于Foundation.h文件中,因此要先包含Foundation.h文件才能使用NSLog函数。就好像在Java中,你用import关键字引入一个类后才能正常使用这个类。
      4> 在OC中,就使用#import来包含头文件,优点是可以自动防止同一个头文件被包含多次。
      5> #import <...>表示包含系统自带的文件,#import "..."表示包含开发人员自己创建的文件

  • 相关阅读:
    A1049. 命题逻辑
    矩形面积交:输出0.00
    完美的代价
    枚举孪生素数对
    改变参数的两种方法
    二面准备:React、Typescript、其他基础补充
    【TypeScript】基础及问题汇总
    【React】做一个百万答题小项目
    【React】相关题目总结
    【React】半小时深刻理解《半小时深刻理解React》(老套娃了)
  • 原文地址:https://www.cnblogs.com/tzktzk1/p/3329593.html
Copyright © 2011-2022 走看看