博客
关于我
基于kali linux c语言编辑,编译,调试
阅读量:204 次
发布时间:2019-02-28

本文共 1053 字,大约阅读时间需要 3 分钟。

编辑

Vim,Emacs

在Linux下,Vim和Emacs是两款非常流行的文本编辑器。它们各有特点,适用于不同的使用场景。以下是对这两款编辑器的一些基本了解:

新建文件夹并保存.c文件:在终端中使用命令创建文件夹,例如:

`mkdir myc`

然后在`myc`文件夹下新建test.c文件:

`touch test.c`

Vim编辑器的一些常用操作:

Vim的使用方法可能对新手来说有些挑战,但它的高效性使其成为许多开发者的偏好。以下是一些基本操作:

- 插入模式(Insert Mode):按下`i`键进入插入模式,输入文本后按`Esc`退出。 - 退出编辑模式(Normal Mode):按下`Esc`键返回正常模式。 - 搜索和替换:使用`/`启动搜索,`?`查看搜索结果。 - 标记和复制:使用`Shift + p`粘贴。

编译

gcc编译套件

在Linux下,gcc是主要的C编译器,支持多种编译选项。编译.c文件的基本命令是:

`gcc -c test.c`

这将生成一个.o文件,例如:`test.o`。要生成可执行文件,可以使用以下命令:

`gcc test.o -o test`

这样将生成一个名为`test`的可执行文件。运行该程序可以使用:

`./test`

Makefile和make命令

Makefile的作用

Makefile是一种自动化编译工具,特别适用于大型项目。通过编写Makefile文件,可以定义编译规则,减少手动操作的复杂性。例如,以下是一个简单的Makefile:

```makefileall: gcc -c test.c gcc test.o -o testrun: ./test```

使用make命令执行编译和运行,可以通过:

`make`

或者指定目标:

`make run`

调试

GDB调试

GDB是Linux下的经典调试工具,支持多种调试模式。要使用GDB,可以先启动程序,然后附加到它:

`gdb -g test`

或者在编译时添加调试选项:

`gcc -g -c test.c`

然后使用GDB附加到程序:

`gdb test`

你可以设置断点,查看变量值,跟踪程序执行流程等。这些功能对于解决编程问题非常实用。

总结

通过以上方法,你可以在Linux下高效地进行编辑、编译和调试。选择合适的工具和命令,可以显著提升你的开发效率。对于更复杂的项目,Makefile和自动化工具可以进一步简化流程。此外,熟悉GDB调试工具也是不可或缺的技能。

转载地址:http://mrfs.baihongyu.com/

你可能感兴趣的文章
SQL-CLR 类型映射 (LINQ to SQL)
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded
查看>>
org.tinygroup.serviceprocessor-服务处理器
查看>>
org/eclipse/jetty/server/Connector : Unsupported major.minor version 52.0
查看>>
org/hibernate/validator/internal/engine
查看>>
Orleans框架------基于Actor模型生成分布式Id
查看>>
SQL-36 创建一个actor_name表,将actor表中的所有first_name以及last_name导入改表。
查看>>
ORM sqlachemy学习
查看>>
Ormlite数据库
查看>>
orm总结
查看>>
os.environ 没有设置环境变量
查看>>
os.path.join、dirname、splitext、split、makedirs、getcwd、listdir、sep等的用法
查看>>
os.removexattr 的 Python 文档——‘*‘(星号)参数是什么意思?
查看>>
os.system 在 Python 中不起作用
查看>>
OS2ATC2017:阿里研究员林昊畅谈操作系统创新与挑战
查看>>
OSCACHE介绍
查看>>
SQL--合计函数(Aggregate functions):avg,count,first,last,max,min,sum
查看>>
OSChina 周五乱弹 ——吹牛扯淡的耽误你们学习进步了
查看>>