iT邦幫忙

0

iOS App開發 OC 第四天, OC 的基礎語法 & 編譯,鏈結,執行

從Swift 到 OC 第四天, OC 的基礎語法 & 編譯,鏈結,執行

tags: OC 30 day

基礎語法

  1. oc 的副檔名
  2. main 函數
  3. import 指令
  4. NSLog 函數

oc 的副檔名

oc 的原文件副檔名為 .m,m代表message 代表oc中最重要的一個機制,消息機制。

main 函數仍是OC程序的入口以及出口

int 類型的返回值,代表程序的結束狀態。
main函數的參數:仍然可以接收用戶在運行程序時傳遞數據給程序。
參數也可以不要。

import 指令

  1. 以#為開頭。
  2. 作用: 為include 加強版
  3. 一個文件無論 import 多少次只會包含一次。

NSLog 函數

  1. 作用:printf 的增強版
  2. 語法:NSLog(@"格式控制字符串",變量列表);
    最簡單的語法: NSLog(@"要輸入的字符串");

編譯,鏈結,執行

Let's start

1. 在 .m 文件中寫上符合OC語法規範的源代碼。

cd 到一個資料夾

建立一個OC的文件

touch main.m

執行該文件

導入 Foundation的框架

#import <Foundation/Foundation.h>

main 函數

int main(){
return 0;
}

在main 函數中放入一個NSLog

NSLog(@"測試");

完成後應該要長這樣

2. 使用編譯器將源代編譯為目標文件

編譯時,到底做了哪些事情呢?

  1. 預處理
  2. 檢查代碼
  3. 編譯
cc -c xx.m

3. 鏈接

cc xx.o


這個時候居然報錯了

為什麼呢?

如果程序中使用到了框架的函數或者類,那麼在鏈結的時候,就必須要告訴編譯器要去哪一個框架中找到這個函數或者類。

如何做到呢?

cc xx.o -framework 框架名稱

cc main.o -framework Foundation

執行

 ./a.out

4. 鏈結成功後,就會生成一個a.out的副文件,執行就可以了。

以上的過程 Xcode 都會自動幫我們完成,我們只需要了解這些過程就行了


尚未有邦友留言

立即登入留言