开发工具和库的一些介绍

一.开发工具

1.在Linux中安装软件,一般有三种途径:源码安装(不推荐);软件包安装(rpm)(不推荐,易出现缺失和版本兼容问题);包管理器(yum/apt)(Centos:yum;Ubuntu:apt/apt-get)

2.安装软件需要root权限,软件只安装一次,任何人均可以使用

3.评估一个操作系统的好坏一般从内核版本和生态(社区,文档,人群,问题等)两方面考虑

4.ls /etc/yum.repos.d/ :查看yum源

5.vim是一款多模式的编辑器

<1>

<2>在命令模式下

gg:快速回到第一行

shift+g:快速定位结尾

n+shift+g:定位到第n行

shift+$:定位到本行结尾

shift+^:定位到本行开头

w:以单词为单位向右移动,n+w:向右移动n个单词

b:以单词为单位向左移动,n+w:向左移动n个单词

h:左移    j :下移  k :上移    l:右移

<3>在插入模式下

yy:复制当前行    p:将复制的内容粘贴到光标所在位置  n+yy:复制选中的n行

dd:剪切当前行   p:将剪切的内容粘贴到光标所在位置  n+yy:剪切选中的n行

u:撤销历史操作    ctr+r:撤销u操作   注:一旦退出文件编辑,就无法进行撤销操作了

x:删除光标所在的字符  p:将删除的字符粘贴到光标所在位置  n+x:复制选中的n个字符

shift+x:光标右侧不动,左侧删除

r 替代字符:替换光标所在位置的字符    n+r

shift+r:批量化替换

shift+~:大小写切换

shift+#:选中单词    n:逆向查找

<4>在底行模式下

shift+zz:退出

w: 保存    q: 退出     wq:保存退出

!:强制      wq!:强制保存退出

set nu:设置行号    nonu:取消行号

!命令:可以直接在底行模式下使用命令

:%s/dst/src/:用src替换dst

:vs new-src:进行分屏操作

6.vim 文件名 进入文件编辑页面后输入wq,此时文件会自动生成

ctr+ww:将光标移动到另一个分屏上

vim 文件名 +n:定位到文件的第n行

:v :查看vim上一次的操作

二.gcc/g++使用的流程

1.预处理:进行宏替换

gcc -E code.c -o code.i

2.编译:生成汇编

gcc -S code.i -o code.s

3.汇编:生成机器可以识别的代码(生成机器码)

gcc -c code.s -o code.o

4.链接:生成可执行文件或库文件

gcc code.o -o code

注:习惯上将*.c文件链接生成*.o文件,再将他们打包形成可执行文件,再进行操作

三.库

1.分类

2.Linux中库的命名规则:  lib名称.so   lib名称.a

3.动态库的特点:执行目标方法需跳转到库中执行,执行完后再返回

动态链接:在编译时完成,让程序能找到在库中的方法的地址

静态链接:将库中的方法拷贝到我们的程序中,静态库只有在链接时候有用,一旦形成可执行程序,静态库可以不再需要(静态库不在内存里)

4.动静态库的对比

动态库形成的可执行程序体积一定很小

可执行程序对静态库的依赖度小,但对动态库依赖度很高

程序运行时,需要加载到内存中,如果采用静态链接会在内存中出现大量重复代码

动态链接比较节省内存和磁盘资源

5.系统默认是动态链接

6.进行静态链接时,静态库必须存在,使用 gcc code.c -o code -static可以强制静态链接

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/25271.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

12字符函数

一、函数strchr与strrchr 注意&#xff1a; 这两个函数的功能&#xff0c;都是在指定的字符串 s 中&#xff0c;试图找到字符 c。strchr() 从左往右找&#xff0c;strrchr() 从右往左找。字符串结束标记 ‘\0’ 被认为是字符串的一部分。 图解&#xff1a; 示例代码&#xff…

【数据挖掘】NumPy

NumPy 是 Python 中一个用于进行科学计算的基础库&#xff0c;它提供了高效的数组操作和数学运算功能。在数据挖掘中&#xff0c;NumPy 被广泛应用于数据预处理、特征工程、算法实现等方面&#xff0c;尤其是在处理大规模数据时&#xff0c;因其提供的高效运算和矩阵操作的能力…

.gitignore 文件中添加忽略 .pdb 文件

我在项目的根目录下创建.gitignore文件。打开.gitignore文件并添加忽略.pdb文件的规则。如下&#xff1a; 已经在 .gitignore 文件中添加了忽略 .pdb 文件的规则&#xff0c;但是提交到 Git 仓库时仍然看到了 .pdb 文件&#xff0c;这通常意味着 .pdb 文件在 .gitignore 文件被…

C++ 常见面试知识点

主要介绍C常见面试题 1、说一下你理解的C中的四种智能指针 常用接口 T* get(); T& operator*(); T* operator->(); T& operator(const T& val); T* release(); 将 封装在内部的指针置为nullptr, 但并不会破坏指针所指向的内容, 函 数返回的是内部指针置空之前…

wx056基于ssm+vue+uniapp的二手闲置交易市场小程序

开发语言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…

Flash-03

1-问题&#xff1a;Flash软件画两个图形&#xff0c;若有部分重合则变为一个整体 解决方法1&#xff1a;两个图形分属于不同的图层 解决方法2&#xff1a;将每个图形都转化为【元件】 问题2&#xff1a;元件是什么&#xff1f; 在 Adobe Flash&#xff08;现在称为 Adobe Anim…

QT6开发高性能企业视频会议-8 使用VSCode+Copilot AI开发

Github Copilot是Github和OpenAI推出的AI编程辅助工具&#xff0c;之前版本的Github Copilot只有简单的代码自动补全&#xff0c;根据注释生成一些代码等辅助功能。 近期Copilot有了一次大的升级&#xff0c;加入了Agent模式&#xff0c;可以实现自然语言对话讨论和最重要的&a…

光谱相机的市场发展趋势

市场规模增长 整体市场稳步扩张&#xff1a;据贝哲斯咨询预测&#xff0c;高光谱相机市场在未来几年将保持稳步增长&#xff0c;2022 年市场规模约为 20 亿美元&#xff0c;预计到 2027 年将达到 30 亿美元&#xff0c;年均复合增长率约为 8%&#xff0c;到 2030 年市场规模将…

QT 中的元对象系统(二):元对象实现原理QMetaObject

目录 1.元对象系统的构成 2.QObject和QMetaObject的关系 3.Qt 元对象模型QMetaObject 3.1.基本信息 3.2.类信息classinfo 3.3.类构造函数constructor 3.4.枚举信息 enumerator 3.5.类方法method 3.6.类属性peoproty 4.MOS(Meta Object System)示例 5.总结 1.元对象系…

【新手入门】SQL注入之盲注

一、引言 在我们的注入语句被带入数据库查询但却什么都没有返回的情况我们该怎么办? 例如应用程序返回到一个"通用的"的页面&#xff0c;或者重定向一个通用页面(可能为网站首页)。这时&#xff0c;我们之前学习的SQL注入的办法就无法使用了。这种情况我们称之为无…

字段对比清洗

import pandas as pd import psycopg2 from psycopg2 import sql# 数据库连接配置 DB_CONFIG {"host": "","user": "","password": "","dbname": "","port": , }def get_excel_fi…

阿里开源正式开园文生视频、图生视频模型-通义万相 WanX2.1

简介 发布时间与背景 通义万相 Wan2.1 模型于 2025年1月 发布&#xff0c;并迅速登顶视频生成领域权威评测 Vbench 的榜首&#xff0c;超越了包括 Sora、HunyuanVideo、Minimax 等国内外知名模型&#xff0c;并于这周开源。它是阿里云在 AI 视频生成领域的最新成果&#xff0…

Python的那些事第三十四篇:基于 Plotly 的交互式图表与仪表板设计与应用

基于 Plotly 的交互式图表与仪表板设计与应用 摘要: 本文深入探讨了 Plotly 这一强大的交互式图表和仪表板库。首先介绍了 Plotly 的背景与发展历程,随后详细阐述了其核心功能特性,包括丰富的图表类型、高度的自定义能力以及便捷的交互操作。通过实际案例分析和示例代码展示…

英文论文查重,Turnitin和IThenticate两个系统哪个更合适?

Turnitin系统和IThenticate系统都是检测英文论文的查重系统&#xff0c;但是两者之间还是有一些不一样的。 下面针对这两个系统给大家具体分析一下。 一、Turnitin系统 Turnitin检测系统&#xff1a; https://truth-turnitin.similarity-check.com Turnitin是世界上主流的…

[Linux]项目自动化构建工具-make/Makefile

项目自动化构建工具-make/Makefile make与Makefile单文件Makefile多文件Makefile 缓冲区 首先理清多文件之间的关系&#xff1a; 这里为什么没有包含test.h头文件&#xff1f;因为在当前工作目录下&#xff0c;因此不需要包含test.h&#xff0c;如果把test.h移到上一级目录&…

ArcGIS Pro中打造精美高程渲染图的全面指南

一、引言 高程渲染图是地理信息系统&#xff08;GIS&#xff09;中用于展示地形地貌的重要工具。一张精美的高程渲染图&#xff0c;不仅能够清晰地呈现地形的起伏变化&#xff0c;还能增强视觉表现力&#xff0c;使得数据更加生动、直观。ArcGIS Pro作为一款强大的GIS软件&…

ollama本地部署DeepSeek(Window图文说明)

目录 1. ollama下载2. 环境变量3. deepseek下载4. 彩蛋 1. ollama下载 安装包下载&#xff1a;Window安装包 命令行方式安装&#xff1a;&#xff08;不推荐使用exe方式进行安装&#xff0c;默认会在C盘路径下&#xff09; 点击install之后&#xff1a; 2. 环境变量 先配…

sqlilab 46 关(布尔、时间盲注)

sqlilabs 46关&#xff08;布尔、时间盲注&#xff09; 46关有变化了&#xff0c;需要我们输入sort&#xff0c;那我们就从sort1开始 递增测试&#xff1a; 发现测试到sort4就出现报错&#xff1a; 我们查看源码&#xff1a; 从图中可看出&#xff1a;用户输入的sort值被用于查…

【02】Cocos游戏开发引擎从0开发一款游戏-cocos项目目录结构熟悉-调试运行项目-最重要的assets资源文件认识-场景sense了解-优雅草卓伊凡

【02】Cocos游戏开发引擎从0开发一款游戏-cocos项目目录结构熟悉-调试运行项目-最重要的assets资源文件认识-场景sense了解-优雅草卓伊凡 开发背景 接下来我们直接打开我们的项目开始进一步操作&#xff0c; 实战开发 导入项目 我把得到的项目解压到本地&#xff0c;我们开…

spring结合mybatis多租户实现单库分表

实现单库分表 思路&#xff1a;student表数据量大&#xff0c;所以将其进行分表处理。一共有三个分表&#xff0c;分别是student0&#xff0c;student1&#xff0c;student2&#xff0c;在新增数据的时候&#xff0c;根据请求头中的meta-tenant参数决定数据存在哪张表表。 数…