C++(1)Linux基础知识
经济下行,计算机就业形势严峻,为了勉励自己继续进步,继续学习代码提高核心竞争力。
安装QT Creator
首先,安装QT开发工具QT Creator
参考:2021最新Qt6开发环境(Qt Creator)安装以及卸载记录_qt6卸载_秋水黑刀的博客-CSDN博客
QT2023新版安装教程_qt安装包_许前许后的博客-CSDN博客
编译后生成可执行文件exe,可执行文件被操作系统执行
//入口程序,入口函数# include <stdio.h> //C语言中所有函数要求先声明后使用 头文件
int main()
{printf("hello world!!!"\n); //error warnningreturn 0;
}//IDE integrated Development Environment 集成开发环境 ——一般引入了一个概念:工程
// QT Creator / Visual Studio//从源文件到可执行文件,经历了什么
//Linux --- main.c --> a.out
//windows --- main.c --> xxx.exegcc -E main.c -o(output) main.i 预处理文件gcc -S main.i -o main.s 编译文件gcc -C main.s -o main.o 汇编(生成二进制文件) Permission deniedgcc main.o -o hello 链接
hello.c --> 预处理(cpp) hello.i --> 编译器(ccl) hello.s --> 汇编器 hello.o 可重定位目标程序(二进制) --> 连接器 hello 可执行目标程序(二进制)
//单行注释
快捷键:右shift + ? 多行注释 或 /* */
条件编译 实现多行著视
#if 0
#endif
C语言
厂商差异性: microsoft vc / borland turbo c / Gnu gcc
平台差异性:Windows / Linux / mac os
Linux内核 发行版 Ubuntu(图形化界面与人机交互) CentOS(免费的redhat) 人性化交互界面、软件服务
Everything is file
类似发动机一样,车不同
uname -r 内核版本号 4主版本号.2次版本号.0末版本号 stablee稳定版
tree / 需要安装命令 显示目录结构
分区与目录
硬盘 挂载在分区中
快捷键 全屏 ctrl+alt+enter
su root 权限
fdisk -l 查看U盘 是否接入
/dev/sda1 sda2 sda3 三个分区,sd串口,a第一块硬盘,123为分区
此时,U盘没有被识别到
如有/dev/sdb4,则为第二个硬盘 ,分区为4
/dev 放置一些 必要的设备、声卡、磁盘等,如/dev/null /dev/console /dev/zero /dev/full等
/mnt 临时挂载文件系统
挂载命令 建立挂载节点
mkdir /mnt/usb
ls /mnt/
挂载命令
mount /dev/sdb4 /mnt/usb/ 把硬盘挂载到文件创建的usb中
cd /mnt/usb/
ls
卸载命令
umount /mnt/usb/
ls /mnt/
Windows中,交互界面是 cmd --> explorer.exe
命令提示符$/# 命令字 ls -l命令选项 /home命令参数 命令组成部分之间用空格进行分隔
su 切换用户
普通用户 $ root用户 #
-l 更多详细信息
cd / 根目录
第一级目录
cd /opt/
清屏命令 Linux clear 快捷键 ctrl + L / Windows cls
pwd 显示当前路径 (print work directory)
touch a.c b.c c.c 创建文件
mkdir dira dirb dirc dird 创建文件夹
rm -rf *.c dir* 慎用 -r recursive -f force
mv a.c dira/ 移动文件到文件夹
cp a.c dira/ 拷贝文件到文件夹
cp -r dira/ dirb/ 将dira中文件全都拷贝到dirb中 -r recursive递归
mv aa.cc a.c 改名文件
mv diraa/ dirb/ 文件夹改名
cp smb.conf cmb.conf.bak 文件备份
ssh ifconfig 查看ip号,远程登陆 sembda服务器,用于文件交互,如windows和linux文件交互
service sshd stop 无法远程连接服务 (PuTTY Configuration可用于连接)
cat smb.conf 查看配置文件的内容
head smb.conf 只看了文件前十行,默认10行 -n 看的行数量
tail smb.conf 只看末尾十行
more smb.conf 可翻页,浏览(只能下翻)
less smb.conf 即可上翻,也可下翻
find 查找位置 / -name smb.conf 查找文件位置
find / -type l 链接性文件
find / -size +1024k 找大于1M的文件
root时,useradd bob passed bob 创建用户
用户的文件夹为/home/bob
userdel bob 删除用户
rm -rf /home/bob/
userdel -r bob 删除所有文件
exit 退出当前用户,不占用进程13633
网络命令
ifconfig 查看ip地址
ping -c 4 192.168.0.0 -c count
service network restart 网络重启
setup 设置防火墙Firewall、静态IP等
service network status 网络状态
service iptables statis 防火墙状态filter过滤
service iptables stop 关闭防火墙
chkconfig iptables off 直接关闭防火墙
sestatus 状态
setenforce 0 关闭selinux
cd /etc/selinux
apt-get update 更新软件
apt-get upgrade 升级最新列表软件
apt-cache search 查询软件列表
apt-get install 安装软件
apt-get remove 卸载软件
vim文本编辑
gedit a.c gedit 必须在开启图像后使用,无图形化界面没有
命令模式
插入模型 i esc->命令模式->shift+: 末行模式
末行模式 shift+: :q退出 :q!退出不保存 :w保存 :wq保存退出
:w bb.c 另存为
vimtutor vim教学 英文版 vimtutor -g zh
shift+z = :wq
< h ^ k ↓ j > l
shift+A, 光标到行末,并进入插入模式
dw 删除单词,不留空格
d$ 当前光标删除到行末
de 删除单词,留空格
2dw 动作前输入数字,动作重复多次
0 到行首;shift+A 到行末
2w 向前移动两个单词
3e使得光标向前移动到第三个单词的末尾
d2 删除两个单词
dd 删除整行
2dd 删除2行
u 回退/撤销
U 整行撤销
x 删除不想保留的字母
ctrl+R 撤消掉撤消命令
dd 删除整行,剪贴板,p粘贴
r 替换
R 整行替换
ce / cw 改变文本
c$ 光标到行末删除
gg 第一行 shift+g 最后一行 500+shift+g 跳到指定位置
ctrl+shift+g 文件状态
/ + 字符,想要查找的字符串
n 跳到当前需要的字符 N 向上跳找当前查找的字符
?+字符 逆向查找
% 括号配对
替换
s/thee/the 将thee替换为the
:553,576s/thee/the/g 范围内的全都改变
o 当前行下一行插入
shift+o 当前行上一行插入
a 光标后面插入
e 单词的最后一个位置插入
r 替换
R 连续替换
y 复制文本,p粘贴
yy 复制一整行
v 选中高亮
j$ 下一行行末
vim /ect/vimrc 全局配置文件
shift+G
set nu 显示行号
set ts=4 左侧缩进4个字符
set ai autoindent 新行自动缩进
set ci cindent c语法自动缩进
全选排列格式,一件格式化
gg 到行首 shift+v 行选模式 shift+g 全选 =
:vsp xxx.c 右侧开个代码
ctrl+w 两个窗口的切换
:sp 文件上下摆放
变量的本质:一段内存空间的别名
C语言区分大小写
Qt Creator
ctrl+A 对齐
ctrl+R 运行
相关文章:
C++(1)Linux基础知识
经济下行,计算机就业形势严峻,为了勉励自己继续进步,继续学习代码提高核心竞争力。 安装QT Creator 首先,安装QT开发工具QT Creator 参考:2021最新Qt6开发环境(Qt Creator)安装以及卸载记录_q…...
接口自动化yaml文件读取与写入
前言 在走进yaml文件之前大家应该都很想知道他是用来干嘛的? 是的是的,他是用来做接口自动化测试的。 我们一起来学习他吧!——(一定要收藏带走哦❤) 1、yaml文件有什么作用呢? ①可作为配置文件使用—…...
Java Map、JSONObject、实体类互转
文章目录 前言Map、JSONObject、实体类互转 前言 使用库 com.alibaba.fastjson2,可完成大部分JSON转换操作。 详情参考文章: Java FASTJSON2 一个性能极致并且简单易用的JSON库 Map、JSONObject、实体类互转 import com.alibaba.fastjson2.JSON; import com.alib…...
在Hive/Spark上执行TPC-DS基准测试 (PARQUET格式)
在上一篇文章:《在Hive/Spark上运行执行TPC-DS基准测试 (ORC和TEXT格式)》中,我们介绍了如何使用 hive-testbench 在Hive/Spark上执行TPC-DS基准测试,同时也指出了该项目不支持parquet格式。 如果我们想要生成parquet格式的测试数据,就需要使用其他工具了。本文选择使用另…...
基于CentOS搭建私有仓库harbor
环境: 操作系统:CentOS Linux 7 (Core) 内核: Linux 3.10.0-1160.el7.x86_64 目录 安装搭建harbor (1)安装docker编排工具docker compose (2)下载Harbor 安装包 (3&…...
PDF怎么转Word?8 个最佳 PDF 转 Word 转换器
PDF 转 Word 转换工具只是一个特殊程序,可以将 PDF(本机和/或扫描)转换为 Microsoft Office Word 格式。将 PDF 导出到 Word 的主要原因之一是满足可编辑文档的需求,尽管还有其他原因。 由于缺少 PDF 阅读器,您可以选…...
老板都爱看的财务数据分析报表,全在这了
老板们都爱看哪些财务数据分析报表?自然是可以帮助他们更好地了解公司的财务状况和经营绩效的那一类财务数据分析报表,比如利润表、资产负债表、现金流量表、应收账款分析报表、应付账款分析报表、库存分析报表等。奥威BI数据可视化工具有一套标准化财务…...
ZooKeeper(zk)与 Eureka 的区别及集群模式比较分析
作者:zhaokk 推荐阅读 AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 资源分享 「java、python面试题」来自UC网盘app分享,打开手机appÿ…...
搜狗拼音占用了VSCode及微信小程序开发者工具快捷键Ctrl + Shit + K 搜狗拼音截图快捷键
修改搜狗拼音的快捷键 右键--更多设置--属性设置--按键--系统功能快捷键--系统功能快捷键设置--取消Ctrl Shit K的勾选--勾选截屏并设置为Ctrl Shit A 微信开发者工具设置快捷键 右键--Command Palette--删除行 微信开发者工具快捷键 删除行:Ctrl Shit K 或…...
PMI-ACP值得考吗?在中国的前景如何?
相信很多小伙伴都听过PMP证书吧,但是对于PMI-ACP则知之甚少。那么同为项目管理证书,PMI-ACP认证的含金量怎么样呢?今天咱们就来聊一聊PMI-ACP敏捷项目管理证书。 PMI-ACP是由PMI(美国项目管理协会)颁发的针对敏捷项目…...
centos 安装防火墙,并开启对应端口号
1.查看防火墙状态: 命令:systemctl status firewalld.service 开启防火墙时,提示没有安装防火墙 [rootlocalhost ~]# systemctl start firewalld.service Failed to start firewalld.service: Unit not found.2.安装防火墙 [rootlocalhost …...
学习微信小程序时间延迟setTimeout和setInterval的使用方法
学习微信小程序时间延迟setTimeout和setInterval的使用方法 setTimeout()setInterval() setTimeout() setTimeout在使用的时候可以实现代码块延迟执行的效果,并且可以设置延迟执行的具体时间。请见如下代码: setTimeout(function() {//要实现延迟执行效…...
Vite好用的前端构建工具
是什么 Vite是Vue的作者尤雨溪开发的 一种新型前端构建工具。 Vite在大型项目开发模式下,打包速度远高于webpack。 Vite 为什么这么快 1. 快速冷启动 Vite只启动一台静态页面的服务器,不会打包全部项目文件代码,服务器根据客户端的请求加…...
Agile Iteration Velocity
【agile iteration velocity】敏捷速度指的平均速度 第四次迭代结束速度: 76 / 4 19 第五次迭代结束速度: (76 24 ) / 5 100 / 5 20...
HarmonyOS/OpenHarmony应用开发-ArkTS语言渲染控制LazyForEach数据懒加载
LazyForEach从提供的数据源中按需迭代数据,并在每次迭代过程中创建相应的组件。当LazyForEach在滚动容器中使用了,框架会根据滚动容器可视区域按需创建组件,当组件划出可视区域外时,框架会进行组件销毁回收以降低内存占用。一、接…...
04_15页表缓存(TLB)和巨型页
前言 linux里面每个物理内存(RAM)页的一般大小都是4kb(32位就是4kb),为了使管理虚拟地址数变少 加快从虚拟地址到物理地址的映射 建议配值并使用HugePage巨型页特性 cpu和mmu和页表缓存(TLB)和cache和ram的关系 CPU看到的都是虚拟地址,需要经过MMU的转化…...
ResourceBundle类:读取配置文件
ResourceBundle类是java自带的类,类路径:java.util.ResourceBundle,用来读取项目中后缀为properties的配置文件。 下面简单举例说明一下用法: 数据准备 1)配置文件名称:application.propertiesÿ…...
数学建模的三大模型和十大常用算法
一、三大模型 预测模型 神经网络预测、灰色预测、拟合插值预测(线性回归)、时间序列预测、马尔科夫链预测、微分方程预测、Logistic模型等等。 应用领域:人口预测、水资源污染增长预测、病毒蔓延预测、竞赛获胜概率预测、月收入预测、销量预测、经济发展情况预测等在…...
NAS绝对安全吗?文件会不会泄露或被删除?
NAS(Network Attached Storage)并非绝对安全,因为任何系统都存在潜在的风险和漏洞。以下是一些可能导致文件泄露或被删除的情况: 1. 物理安全:如果未采取适当的物理安全措施,例如未将NAS设备放置在安全环境…...
Kubernetes 使用 Rancher 管理
K8S集群管理工具 只能管理单个K8S集群 kubectl命令行管理工具 dashboard(K8S官方的UI界面图形化管理工具) (管理多集群很麻烦,切换不同集群每次需要更改kube-config文件[kubectl配置文件],如果kubeadm部署每次都需…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果:嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
uniapp 小程序 学习(一)
利用Hbuilder 创建项目 运行到内置浏览器看效果 下载微信小程序 安装到Hbuilder 下载地址 :开发者工具默认安装 设置服务端口号 在Hbuilder中设置微信小程序 配置 找到运行设置,将微信开发者工具放入到Hbuilder中, 打开后出现 如下 bug 解…...
【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验
Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...
go 里面的指针
指针 在 Go 中,指针(pointer)是一个变量的内存地址,就像 C 语言那样: a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10,通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...
sshd代码修改banner
sshd服务连接之后会收到字符串: SSH-2.0-OpenSSH_9.5 容易被hacker识别此服务为sshd服务。 是否可以通过修改此banner达到让人无法识别此服务的目的呢? 不能。因为这是写的SSH的协议中的。 也就是协议规定了banner必须这么写。 SSH- 开头,…...
前端开发者常用网站
Can I use网站:一个查询网页技术兼容性的网站 一个查询网页技术兼容性的网站Can I use:Can I use... Support tables for HTML5, CSS3, etc (查询浏览器对HTML5的支持情况) 权威网站:MDN JavaScript权威网站:JavaScript | MDN...
