导航:首页 > 源码编译 > vi编辑器常见编译错误

vi编辑器常见编译错误

发布时间:2023-01-21 23:27:20

Ⅰ 用VI写的代码 无法编译

你好
首先 你定义的int函数,所以最后应该加一个返回值 return 0;
其次 你要确定你的电脑已经安装了gcc这个编译器,这种情况一般是没装gcc

你用cc -o a a.c试下

Ⅱ 为什么我在LINAUX系统下的VI编辑器里的程序无法编译

vi 编辑器也不是编译器阿,你用gcc -g命令编译生成a.out文件再执行试试

Ⅲ 打开终端,利用vi编译器新建一个空文件,为什么会报错

代码错误。在利用vi编译器,新建一个空文件,会报错是由于代码错误。vi编译器是linux和Unix上最基本的文本编辑器,工作在字符模式下,由于不需要图形界面,使其成了效率很高的文本编辑器。

Ⅳ Linux 中vi编辑器,当在一般模式中输入:wq保存退出时,报错如下图

你的当然文件夹下有一个test文件夹吧,所以你是用vi打开了这个文件夹,文件夹是不可以改写的(只读)所以无法保存。vi是可以打开文件夹来查看的,但无法改写。

Ⅳ 【Linux】使用vim时报错E138: Can't write viminfo file /home/work/.viminfo!

最近在使用vim编辑器时,老是报错:E138: Can't write viminfo file /home/work/.viminfo!

先说解决办法:进入报错的目录,也就是/home/work/,然后执行命令:rm -f .viminf*.tmp 即可

原因:进入/home/work/目录下,用ls -a你会发现有很多.viminfa.tmp - .viminfz.tmp 这种的临时文件,这是因为使用vim编辑器时,如果编辑器没有正常退出就会生成一个暂存文件,供下次恢复使用。而这个错误是因为生成大量的“.viminf*.tmp” 并没有被系统自动删除,而是一直存在于该文件夹中,使得vim每次向“.viminfo”中写入使用信息时,无法判断该写入哪个信息

Ⅵ 我在REd Hat Enterprise linux4下 用vi编辑器编写程序,末行模式下保存的时候出现错误

:wq
强制保存。

Ⅶ vim运行:make出错

VI/VIM基础知识

很多人应该都知道VI是个有模式的编辑器:编辑模式和命令模式,按ESC回到命令模式,用i或者a进入编辑模式,由于区分了模式,导致VI的命令非常简洁,而无模式编辑器比如Emacs,所有的命令都需要加上控制键Ctrl或Alt。

VI继承了ed的理念,另外也有历史原因,VI追求的是快捷——启动程序迅速,编辑文本高效,功能专注,而Emacs追求的是功能的丰富强大以及集成带来的方便。

在VIM里头:help mode可以看到VIM的所有模式,主要有如下几种:
Normal mode 即通常所谓的命令模式,在此模式使用a、i、A、I、o、O等进入Insert mode
Insert mode 即通常所谓的编辑模式,在此模式使用ESC进入Normal mode或者Ctrl-o临时进入Normal mode。
Command-line mode 命令行模式,在Normal mode下按冒号进入,按ESC取消执行命令或者回车执行命令,然后回到Normal mode。(Visual Studio.Net也添加了命令行脚本功能,幸甚)
Visual mode 即选择模式(注意跟用鼠标选择不同),用v,V,C-v或C-q进入
Select mode 鼠标选择
Replace mode 在Normal mode下按R进入,按ESC返回Normal mode,相当于Windows下命令行中按Insert键进入的覆盖模式
从VI/VIM中退出:按ESC确认返回到Normal mode,然后

:wq 保存并退出
:q! 不保存并退出
:x 退出,如果文件更改则保存
ZZ 退出,如果文件更改则保存(按住Shift,再按两次z)
VI的命令是非常具有美感的,下面是几个例子:

i 在光标前插入 I 在行首插入
a 在光标后插入 A 在行末插入
o 在下一行插入 O 在上一行插入
x 删除当前字符 X 删除前一个字符
类似的还有b,B,ge,gE,w,W,e,E,f,F,t,T,这些命令都可以用:help cmdname查到帮助。

dd 删除一行 yy 拷贝一行
h j k l 左下上右移动光标
Ctrl-w h,Ctrl-w j,Ctrl-w k,Ctrl-w l 切换到左下上右窗口
类似ed,VI/VIM的命令大多都可以带一个数字前缀或者一个数字范围,比如:

5dd 从当前行开始删除5行
5yy 从当前行开始拷贝5行
1,3d 删除1至3行
1,3y 拷贝1至3行 (.代表当前行,$代表最后一行)
d<motion>,y<motion>,c<motion>,v<motion>分别代表删除/拷贝/修改/选择<motion>

命令指定的范围,比如
int main(void)
{
......;
}

将光标放在{处,然后输入v%就可以把大括号中内容选定,然后按=就可以按照C语言格式缩排(:help =可以看到=命令的描述),%命令的作用是跳到匹配处,比如括号之间,C的宏指令#if #else #endif之间。

int some_ugly_modifier and some_ugly_name (void)
如果光标放在第一个s上,想删除到“(”为止,则输入dt(就可以了,t(的作用是跳到下一个
"("前。

dG可以从当前位置一直删除到文件末尾,因为G的作用是跳到文件最后一行。

VIM的命令可以非常快捷的做到一些复杂的编辑操作。

命令解释如下:

% 全文(“%”是“1,$”范围的缩写)
s 替换
/ 搜索字符串开始
( 左括号
\) 开始记录匹配
\d+ 一个或多个数字
\) 结束记录匹配
) 右括号
/ 搜索字符串结束
\= 把后面的表达式计算出来作为替换字符串
"(" 左括号
. 字符串连接运算符
(submatch(1) + 1) 把第一个匹配的结果加一作为一个整体返回
.")" 添上右括号
/g 替换字符串结束,g表示替换每一行的所有匹配结果。
:set ve=all 使得光标可以定位到屏幕任何位置(缺省下VIM的光标只能放在行内的字符上)
gg 到文件第一行
/\s\+&\s*$ 找以&结尾的行,&前至少一个空白字符,后0或多个空白字符
qa 记录宏到寄存器a
D 删除到行尾
78| 定位到第78列
i&<ESC> 插入&并返回到命令模式
n 查找下一个&
q 停止记录宏
10000@a 执行一万遍寄存器a中保存的命令
:set ve="" 恢复ve缺省值

Ⅷ Linux Vi编辑器 打开文件时报的异常 怎么解决 在线等

报这个错误是因为这个文件以前被编辑的过程中,存在非法退出,所以在该文件的相同目录下存在一个 .sysctl.conf.swp 文件,将此文件删除后再进行编辑即可,注意,此文件是隐藏的,而且文件名是以英文的点开头的: " . " ,删除时直接输入 rm -rf /etc/.sysctl.conf.swp 即可。

Ⅸ 虚拟机装的linux5 vi编辑器里输入命令字不会变颜色,是不是没有识别啊编译的时候一直有错误,怎么办

你没有配置好vim


lookme的vim

不仅仅有高亮还有提示哦

表示和我磨合了5年的配置

需要配置联系我

mail:[email protected]

Ⅹ c++ 编译错误 vi编译器

q.cpp: In function `int main()':

在mian函数里
q.cpp:20: no method `score::sumfs'

提示你没有 sumfs 方法

q.cpp:13: `int score::sumfs' is not a static member of `class score'

sumfs 不是一个静态成员

你看看咯,sumfs错了,应该是sunfs吧。

再说,你都已经学到了类了,连这些你都看不懂。这个已经说不过去了

阅读全文

与vi编辑器常见编译错误相关的资料

热点内容
万象服务器断电后启动不了怎么办 浏览:352
我的世界苹果版的2b2t服务器地址咋查 浏览:95
xlsx转换pdf 浏览:98
3dmax挤出命令英语 浏览:903
靶心率的定义和算法 浏览:513
3d模术师app哪里下载 浏览:474
php中文api文档 浏览:458
安卓设计怎么加入输入框 浏览:185
主根服务器什么时候开始 浏览:738
奇门遁甲完整版pdf 浏览:901
app软件怎么用的 浏览:802
电子书pdf购买 浏览:193
浪潮服务器如何做系统 浏览:111
冒险岛img格式加密 浏览:596
我的世界手游如何复制命令 浏览:659
天刀自动弹琴脚本源码 浏览:970
打开其它app微信怎么收不到 浏览:447
安卓游戏耳机怎么戴 浏览:18
不越狱怎么去除app广告 浏览:178
ipadminipdf阅读 浏览:507