经济下行,计算机就业形势严峻,为了勉励自己继续进步,继续学习代码提高核心竞争力。
安装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 warnning
return 0;
}
//IDE integrated Development Environment 集成开发环境 ——一般引入了一个概念:工程
// QT Creator / Visual Studio
//从源文件到可执行文件,经历了什么
//Linux --- main.c --> a.out
//windows --- main.c --> xxx.exe
gcc -E main.c -o(output) main.i 预处理文件
gcc -S main.i -o main.s 编译文件
gcc -C main.s -o main.o 汇编(生成二进制文件) Permission denied
gcc 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 运行