vimc编译
linux平台的C开发环境一般有Eclipse CDT,Source Insight或者VIM,都各有特点。
1.首先,在vmware里设置网卡模式为NAT
先ifconfig -a查看那有几块网卡,一般可以看到lo和eth0,我这里是eth1
然后用vi /etc/network/interfaces编辑该文件,再最后面加一句iface eth0 inet dhcp
重启虚拟机或者/etc/init.d/networking restart就行了
再次ifconfig就可以看到已分配到了IP,然后ping一下外网地址验证一下。
译和调试环境安装好了,该装编辑器VIM了。
2.装好后为了编辑方便,先启用语法高亮显示,自动缩进,显示行号等,用VIM编辑VIM的配置文件vim /etc/vim/vimrc,在末尾加上如下设置
syntax on
set autoindent
set cindent
set nu
3.先简单设置这些,以后再设置配色方案,自动提示,文件列表等功能,VI的使用,可以看看VI的中文手册,和后面的参考链接。
B. vim编写C程序问题
GCC的-O选项代表目的文件,它可以是一个文件名,也可以是一个带路径的文件名。你可以把命令改成:
gcc -Wall -o ~/sources/helloworld ~/sources/helloworld.c
这样目标文件和源文件都在sources目录下了。
C. 在VIM里面是怎样编译C语言的文件
IDE包括了编辑器,自动为你做了很多事情。就像你如果在WIN下用editplus等编辑器写代码,也要你保存之后再用编译器编译文件。
linux下也有很多IDE。。。vim也可以通过配置打造成IDE
D. 怎么在linux下用vim编写一个C程序
先在终端中输入
vim
test.c
回车进入vim编辑器,再按一下a键,进入编辑状态,然后输入如下C语言语句:
#include<stdio.h>
int
main()
{
printf("hello
world!\n");
}
到此,按esc键退出编辑状态,再输入一个冒号(shift
+
冒号分号那个键),紧跟着输入
wq
,即
输入
:wq
按回车,即推出vim编辑器回到终端命令窗口(类似xp的命令提示符),
之后输入
gcc
test.c
,这步是编译
./a.out
,
这是执行,将会输出
hello
world!
到此结束,前提是你已经安装gcc
E. vim C语言条件编译的颜色配置问题
这是相当于注释的,vim的默认主题就是这种颜色配置,你把 #ifdef AAA 换成 #if 0 就可以看到了。如果你vim配置了颜色的话,如果没有配置就在任意目录下输入 vim ~/.vimrc在其中加入set background=dark "设置背景色
F. 我想在vim中直接编译C语言请问怎样配置vimrc啊
python">"------------------------------------------------------------------------------
" < 编译、连接、运行配置 >
"------------------------------------------------------------------------------
" F9 一键保存、编译、连接存并运行
map <F9> :call Run()<CR>
imap <F9> <ESC>:call Run()<CR>
" Ctrl + F9 一键保存并编译
map <c-F9> :call Compile()<CR>
imap <c-F9> <ESC>:call Compile()<CR>
" Ctrl + F10 一键保存并连接
map <c-F10> :call Link()<CR>
imap <c-F10> <ESC>:call Link()<CR>
let s:LastShellReturn_C = 0
let s:LastShellReturn_L = 0
let s:ShowWarning = 1
let s:Obj_Extension = '.o'
let s:Exe_Extension = '.exe'
let s:Sou_Error = 0
let s:windows_CFlags = 'gcc -fexec-charset=gbk -Wall -g -O0 -c % -o %<.o'
let s:linux_CFlags = 'gcc -Wall -g -O0 -c % -o %<.o'
let s:windows_CPPFlags = 'g++ -fexec-charset=gbk -Wall -g -O0 -c % -o %<.o'
let s:linux_CPPFlags = 'g++ -Wall -g -O0 -c % -o %<.o'
func! Compile()
exe ":ccl"
exe ":update"
if expand("%:e") == "c" || expand("%:e") == "cpp" || expand("%:e") == "cxx"
let s:Sou_Error = 0
let s:LastShellReturn_C = 0
let Sou = expand("%:p")
let Obj = expand("%:p:r").s:Obj_Extension
let Obj_Name = expand("%:p:t:r").s:Obj_Extension
let v:statusmsg = ''
if !filereadable(Obj) || (filereadable(Obj) && (getftime(Obj) < getftime(Sou)))
redraw!
if expand("%:e") == "c"
if g:iswindows
exe ":setlocal makeprg=".s:windows_CFlags
else
exe ":setlocal makeprg=".s:linux_CFlags
endif
echohl WarningMsg | echo " compiling..."
silent make
elseif expand("%:e") == "cpp" || expand("%:e") == "cxx"
if g:iswindows
exe ":setlocal makeprg=".s:windows_CPPFlags
else
exe ":setlocal makeprg=".s:linux_CPPFlags
endif
echohl WarningMsg | echo " compiling..."
silent make
endif
redraw!
if v:shell_error != 0
let s:LastShellReturn_C = v:shell_error
endif
if g:iswindows
if s:LastShellReturn_C != 0
exe ":bo cope"
echohl WarningMsg | echo " compilation failed"
else
if s:ShowWarning
exe ":bo cw"
endif
echohl WarningMsg | echo " compilation successful"
endif
else
if empty(v:statusmsg)
echohl WarningMsg | echo " compilation successful"
else
exe ":bo cope"
endif
endif
else
echohl WarningMsg | echo ""Obj_Name"is up to date"
endif
else
let s:Sou_Error = 1
echohl WarningMsg | echo " please choose the correct source file"
endif
exe ":setlocal makeprg=make"
endfunc
func! Link()
call Compile()
if s:Sou_Error || s:LastShellReturn_C != 0
return
endif
let s:LastShellReturn_L = 0
let Sou = expand("%:p")
let Obj = expand("%:p:r").s:Obj_Extension
if g:iswindows
let Exe = expand("%:p:r").s:Exe_Extension
let Exe_Name = expand("%:p:t:r").s:Exe_Extension
else
let Exe = expand("%:p:r")
let Exe_Name = expand("%:p:t:r")
endif
let v:statusmsg = ''
if filereadable(Obj) && (getftime(Obj) >= getftime(Sou))
redraw!
if !executable(Exe) || (executable(Exe) && getftime(Exe) < getftime(Obj))
if expand("%:e") == "c"
setlocal makeprg=gcc -o %< %<.o
echohl WarningMsg | echo " linking..."
silent make
elseif expand("%:e") == "cpp" || expand("%:e") == "cxx"
setlocal makeprg=g++ -o %< %<.o
echohl WarningMsg | echo " linking..."
silent make
endif
redraw!
if v:shell_error != 0
let s:LastShellReturn_L = v:shell_error
endif
if g:iswindows
if s:LastShellReturn_L != 0
exe ":bo cope"
echohl WarningMsg | echo " linking failed"
else
if s:ShowWarning
exe ":bo cw"
endif
echohl WarningMsg | echo " linking successful"
endif
else
if empty(v:statusmsg)
echohl WarningMsg | echo " linking successful"
else
exe ":bo cope"
endif
endif
else
echohl WarningMsg | echo ""Exe_Name"is up to date"
endif
endif
setlocal makeprg=make
endfunc
func! Run()
let s:ShowWarning = 0
call Link()
let s:ShowWarning = 1
if s:Sou_Error || s:LastShellReturn_C != 0 || s:LastShellReturn_L != 0
return
endif
let Sou = expand("%:p")
let Obj = expand("%:p:r").s:Obj_Extension
if g:iswindows
let Exe = expand("%:p:r").s:Exe_Extension
else
let Exe = expand("%:p:r")
endif
if executable(Exe) && getftime(Exe) >= getftime(Obj) && getftime(Obj) >= getftime(Sou)
redraw!
echohl WarningMsg | echo " running..."
if g:iswindows
exe ":!%<.exe"
else
if g:isGUI
exe ":!gnome-terminal -e ./%<"
else
exe ":!./%<"
endif
endif
redraw!
echohl WarningMsg | echo " running finish"
endif
endfunc
怎么用有注释,直接放到你vimrc文件的最后就可以
G. 如何用vim编译C++
1、vim abc.c
2、在abc.c里面写好想要的程序
3、在终端里面跳到该abc.c的目录下
4、用命令gcc -o t abc.c
5、./t 即可
PS:要先确定安装了GCC,可在终端下用命令gcc -v来确认~
希望能解决您的问题。
H. vim能编译C语言的文件吗
这个东西在linux下用得比较多吧,它就像是一个类似于txt的文本编辑工具,似乎不能实现编译的功能……我刚刚学C的时候记得有一个叫win-TC的工具,比较小,而且支持鼠标操作,对初学者比较方便,不过对C的语法要求比较高。
I. 打开vim后怎样编写c/c++/java文件即编译运行 编写完后如何保存 保存路径在哪 路径是否可更改
1、用vim编写文件代码,一般需要按i、a、o、O、A、I这六个字母键进入插入模式,输入完成后,按ESC键退出插入模式。
2、可以直接在vim中执行,vim通过"!"来执行外部命令。下图是在vim中通过”!“号执行gcc编译hello.c的文件,生成可执行文件hello后,同时执行当前文件目录下的hello。g++、java操作类似。