C代码一定要编译才可以看到效果吗

在学C,每次代码写完都要执行命令gcc 文件名 -o 文件名,才能看到效果。有没有便捷方法

阅读 4.3k
6 个回答

的确是有C语言解释器啥的。但是其实由于C语言并不是JS那样的脚本语言,不能随便写一个代码段就可以跑,有各种头文件、声明啥的,解释器没有啥优势。所以用一个方便的IDE配合编译器更好。
如果是学习C/C++的话,还是建议在Windows上用Dev C++(https://sourceforge.net/proje...)。他继承了Windows版的GCC,可以支持C 11/C++ 11等新的语言特性,和VS相比小巧方便,很适合写小型程序和学习。安装好后,是可以在Preferences里设置为中文界面的。
Linux下的话,CodeLite和Anjuta这样的是比较小巧易用的IDE。Netbeans、Eclipse都比较臃肿,Codeblocks还可以就是UI略微不太友好。
等语言入门了以后,在学习Makefile不迟,何况Eclipse之类的事可以自动帮你生成Makefile的(对于简单程序完全足够了)。

自己写Makefile

找个IDE,把编译运行的任务交给它

你是用vim编辑吗,vim可以配置,在~/.vimrc,之后编辑后按f5就可以运行了

map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
    exec "w"
    if &filetype == 'c'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'cpp'
        exec "!g++ % -o %<"
        exec "! ./%<"
    elseif &filetype == 'java' 
        exec "!javac %" 
        exec "!java %<"
    elseif &filetype == 'sh'
        :!./%
    endif
endfunc

C必须经过编译、链接才能运行。对于工程而言,选择一个构建系统几乎是必须的。自己调用gcc或者手写Makefile都不是最佳实践。

常见的构建系统中,autotool是古老的构建系统,IDE支持上不是很好,入门门槛比较高。cmake比较新一些,IDE支持比较好。事实上,一旦涉及到可移植性问题的时候,无论是autotool还是cmake都很复杂。我习惯vim,所以倾向于autotool

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进