2012-12-02 52 views
15

我正在學習C語言。我指的是Dennis Ritchie的作品& Kernighan。那裏只有ANSI投訴程序。我已經安裝了ANSI編譯器。我剛安裝了Sublime text 2編輯器。有人可以給我一個建立系統,可以做到以下幾點。崇高的文字2編寫C語言編程系統

1)編譯我的源文件中的昇華

2)顯示錯誤(在孔中格式化的方式)上不成功編譯。

3)成功編譯後,生成名稱與我的工作目錄中的源文件名相同的二進制文件。

4)接受崇高內任何用戶輸入來計算輸出。 (由於我是初學者,我大多寫程序會要求用戶輸入,例如:計算用戶輸入名稱中的字符數)

5)單獨選擇編譯&運行。

在此先感謝。

+1

ST2不允許用戶輸入,即您的第4個請求。 – AGS

+0

感謝您的回覆。問題解決了。 :) – userzerox

回答

34

從菜單中,選擇Build - >新構建系統...... 和複製粘貼此:

的Windows

只編譯:

{ 
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}.exe", "-lm", "-Wall"], 
"selector" : "source.c", 
"shell":true, 
"working_dir" : "$file_path" 
} 

編譯&運行:

{ 
    "windows": 
    { 
     "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}.exe", "-lm", "-Wall", "&","start", "${file_base_name}.exe"] 
    }, 
    "selector" : "source.c", 
    "shell": true, 
    "working_dir" : "$file_path", 
} 

Linux的

只編譯:

{ 
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}", "-lm", "-Wall"], 
"selector" : "source.c", 
"shell":false, 
"working_dir" : "$file_path" 
} 

編譯&運行:

{ 
    "linux": 
    { 
     "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}", "-lm", "-Wall", ";", "./${file_base_name}"] 
    }, 
    "selector" : "source.c", 
    "shell": true, 
    "working_dir" : "$file_path", 
} 

並保存此擴展名爲* .sublime-build

ST只是一個編輯器,所以你不能使用它作爲輸入流,你必須使用像bash,zsh這樣的shell來完成它。

+1

c633:我非常感謝你。有用。真的很欣賞你的迴應。 :) – userzerox

+0

如果不指示GCC與數學庫'-lm'鏈接,是不是已經足夠了? – JSmyth

+0

是否有任何_sublime_方法在exec後保持shell打開。在窗戶上?我的意思是,它只會避免在C中寫入額外的行,但對於像我這樣的懶惰的人可能會有所幫助......或者可以使用buildlog作爲輸出嗎? –

0

在崇高文本2中查看狀態欄,其中顯示語言或「純文本」, 單擊它並搜索'c'語言。建立你只需要保存Ctrl-s和Build Ctrl-B,就像蛋糕一樣簡單!你也可以嘗試一個C友好的IDE,比如Eclipse。 http://www.eclipse.org/

+0

Dr. Astragalo:我需要上述要求的構建系統。現有的構建系統不提供上述所有功能。 默認的構建系統也無法正常工作。 C被選中,當我建立我得到「系統找不到指定的文件」錯誤。 已安裝編譯器位置:C:\ MingGW \ bin 正確指定了環境變量中的PATH。 – userzerox