淺嘗iOS使用clang

【注】本文是個(gè)人學(xué)習(xí)clang時(shí)做的一些筆記和整理棵譬,分享一下僅供參考射窒,文中多處摘自參考文章噪窘。

好想有個(gè)能千變?nèi)f化的編譯器,沒錯(cuò)就是它,就是它. -----Clang

簡介

clang是一個(gè)c侯嘀,c++庆冕、oc語言的輕量編譯器,源碼發(fā)布于BSD 協(xié)議下实夹。

  • 終端用戶特色
  • 快速編譯和較少內(nèi)存占用
  • 有診斷功能
  • 兼容gcc

一橄浓、查看oc中c語言的實(shí)現(xiàn)源碼

  • 使用vim編輯器測試
  • 打開vim 建立.c文件
vim test.c

  • 寫入測試的代碼,下面測試代碼查看block的實(shí)現(xiàn)(輸入上面指令后亮航,輸入“i”開始編輯荸实,粘貼完后按“esc”鍵,輸入“:wq”缴淋,回車)
#include <stdio.h>
int main () {
 void(^blk)(void) = ^{
  printf("Block\n");
  };
  blk();
  return 0;
}
vim file
  • 編譯,目錄下面會(huì)生成a.out文件
gcc test.c
  • 最后使用clang查看源碼,成功會(huì)生成test.cpp文件准给,里面就是源碼
clang -rewrite-objc test.c
生成文件

關(guān)于a.out的維基百科,我看不懂?? 嘗試用終端查看文件宴猾,一大堆亂碼。

test.cpp文件就是相關(guān)的c++實(shí)現(xiàn)

.cpp:只能編譯c++代碼叼旋,.mm是編譯c仇哆,oc罗售,c++棕洋,.h是聲明,.m包含oc和c代碼的文件

二蜈出、編譯oc

  • 同樣創(chuàng)建測試代碼文件详民,test.m
#import <Foundation/Foundation.h>
        int main(int argc, const char * argv[]) {
         @autoreleasepool {
           // insert code here...
        NSLog(@"你好世界!");
        }
        return 0;
     }
  • 輸出可執(zhí)行文件
clang -fobjc-arc -framework Foundation test.m -o outputname
可執(zhí)行文件
執(zhí)行結(jié)果

指令解釋

  • -fobjc-arc表示編譯需要支持ARC特性
  • -framework Foundation表示引用Foundation框架
  • test.m是待編譯的源文件名
  • -o outputname表示輸出可執(zhí)行文件名是outputname

總結(jié): Clang是一個(gè)C++編寫延欠、基于LLVM、發(fā)布于LLVM BSD許可證下的C/C++/Objective-C/Objective-C++編譯器沈跨。它與GNU C語言規(guī)范幾乎完全兼容;同時(shí)Clang的使用簡單方便,值得我們學(xué)習(xí).

參考文章

clang查看Objective-C中C語言實(shí)現(xiàn)源碼

iOS 淺談Clang的使用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末由捎,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子饿凛,更是在濱河造成了極大的恐慌狞玛,老刑警劉巖软驰,帶你破解...
    沈念sama閱讀 219,490評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異心肪,居然都是意外死亡锭亏,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門硬鞍,熙熙樓的掌柜王于貴愁眉苦臉地迎上來慧瘤,“玉大人,你說我怎么就攤上這事固该」酰” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵蹬音,是天一觀的道長上煤。 經(jīng)常有香客問我,道長著淆,這世上最難降的妖魔是什么劫狠? 我笑而不...
    開封第一講書人閱讀 58,957評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮永部,結(jié)果婚禮上独泞,老公的妹妹穿的比我還像新娘。我一直安慰自己苔埋,他們只是感情好懦砂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評(píng)論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著组橄,像睡著了一般荞膘。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上玉工,一...
    開封第一講書人閱讀 51,754評(píng)論 1 307
  • 那天羽资,我揣著相機(jī)與錄音,去河邊找鬼遵班。 笑死屠升,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的狭郑。 我是一名探鬼主播腹暖,決...
    沈念sama閱讀 40,464評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼翰萨!你這毒婦竟也來了脏答?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎以蕴,沒想到半個(gè)月后糙麦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡丛肮,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評(píng)論 3 338
  • 正文 我和宋清朗相戀三年赡磅,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宝与。...
    茶點(diǎn)故事閱讀 40,137評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡焚廊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出习劫,到底是詐尸還是另有隱情咆瘟,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評(píng)論 5 346
  • 正文 年R本政府宣布诽里,位于F島的核電站袒餐,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏谤狡。R本人自食惡果不足惜灸眼,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望墓懂。 院中可真熱鬧焰宣,春花似錦、人聲如沸捕仔。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽榜跌。三九已至闪唆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間钓葫,已是汗流浹背悄蕾。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瓤逼,地道東北人笼吟。 一個(gè)月前我還...
    沈念sama閱讀 48,409評(píng)論 3 373
  • 正文 我出身青樓库物,卻偏偏與公主長得像霸旗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子戚揭,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 前言 2000年诱告,伊利諾伊大學(xué)厄巴納-香檳分校(University of Illinois at Urbana-...
    星光社的戴銘閱讀 15,898評(píng)論 8 180
  • LLVM 簡介 LLVM 全稱是 Low Level Virtual Machine,它是源自 the Unive...
    juniway閱讀 37,880評(píng)論 0 21
  • 1.項(xiàng)目經(jīng)驗(yàn) 2.基礎(chǔ)問題 3.指南認(rèn)識(shí) 4.解決思路 ios開發(fā)三大塊: 1.Oc基礎(chǔ) 2.CocoaTouch...
    陽光的大男孩兒閱讀 4,988評(píng)論 0 13
  • 比較麻煩锄禽,未完待續(xù)。靴姿。沃但。。佛吓。宵晚。 VIM 配置:.vimrc以及.ycm_extra_conf.py配置 插件:個(gè)人...
    陳半仙兒閱讀 16,196評(píng)論 3 26
  • 有些忍耐,無來無去维雇,無有無印淤刃,透著無盡的慈悲…… 有些忍耐,帶著含蓄吱型,藏著隱逸逸贾,保有靜默,它使時(shí)光平和淡遠(yuǎn)津滞,它讓歲...
    燕兒_7bb6閱讀 449評(píng)論 0 2