学习笔记

前言

最近在入门python和c linux算后期的基础 所以先学习linux打基础

  • 先学linux
  • 需要用vmware搭建虚拟机
  • 远程连接用finalshell

(PS:我刚才才知道markdown文档按两下回车就会跳出当前编辑的列表/大纲)

认识硬件

CPU是大脑(CPU代码后带U的主打续航,可能性能不够高 )

内存是黑板(临时存储的意思 主看ddr代数 和频率 睿频频率高效率高)

硬盘是课本(sdd s是solid 固态硬盘 现在很便宜了 ,HSD是混合硬盘 HDD(Hard)是固态硬盘)

操作系统属于是软件,是硬件与软件联系的桥梁

没操作系统的电脑是裸机

(PS:题外话 刚才发现微软的path很多都是ms+名称 比如mspaint是画图 msconfig是设置)

认识LINUX

LINUX发行版=Linux内核+系统库+系统软件

kernel.org可以下载linux的内核

发行版就是打包好的LINUX系统

  • linux发行版有deepin ubuntu centos等
  • redhat:付费的 ibm公司
  • centos: redhat免费版
  • ubuntu:界面好,适合小白
  • 中标麒麟:国内用的系统

虚拟机

模拟硬件安装系统

vmware 和 virtualbox比较常用 前收费稳定 后免费开源

虚拟机与宿主机数据完全隔离

vmware 安装

1.憋出中文

  1. 如果安装成功 网卡里面会有两个虚拟网卡 没有可以在 编辑-虚拟网络编辑器中重置vmware
配置

用finalshell链接虚拟机

在编辑-虚拟网络编辑器 可看网络

快照

拍快照提高容错率

右键选择虚拟机-点快照-拍照/恢复快照 或快照管理器

快照相当小(相比大量镜像)但实际快照是2-3个

LINUX基础

  • 在windows中,文件没有相同父级,而linux中有/ 作为最终父级(安卓和mac也有)叫根目录

,没有盘符一说

  • / 正斜线 linux中都用正斜线
  • \反斜线
  • linux命令中 以 命令 -[选项] 参数

ls

ls是查看当前目录文件

-a 是all 展示所有包括隐藏的

-al 是以每一列的形式展示 可理解为详细展示 -l可记为“列”

-alh h是human 理解为人性化 也就是自动换算单位

后面加上路径就是在某个位置

pwd

是显示当前位置 可记成 盘我的 直接显示当前路径

LINUX目录

bin:存放基础命令

sbin: super 超级命令

etc:存放linux配置

home:root之外的账号

基础指令

  • cd:回城命令
  • ..是上级目录
  • ../.. 再上级目录
  • ~ 回城
  • -切换
  • mkdir 建文件夹 后面加个-p 可以创多级目录

cp copy 拷贝文件(cp 1.txt /aa/2.txt 改名并复制 -r叫递归拷贝 只有这样才能拷贝文件夹)

mv move剪切

rm remove 删除

cat 像猫一样看所有的文件 只显示最后一页 ,同样的有more 可显示更多 注意这两个命令都是显示文件内 而不是文件夹

rm -rf *.txt 删除当前目录下所有txt文件

养成习惯 删文件不加-r 但删任何东西都加-f

which .....是查找某命令的位置

find 路径 -name ‘文件名’ 比如find / -name ‘abc*’

-size +100m 可筛选出100mb以上的东东

echo 类似python的print 但也可以有写入的作用 比如echo ‘hello’ >>1.txt是追加 echo 'hello'>1.txt是覆盖

c基础

helloworld

#include<studio.h>
//标准

int main()
{
    printf('he wo');
    return 0;
}

和C#好像哈哈

核心语法

注释://是c语言的注释 注意不是# #已经让标准给用了

长注释也一样用 /123/

可以用ctrl+kc 来快速添加注释 和c#一样 ct+ku删注释

关键字 就是有特殊含义的单词 比如void if long else 之类的 ,都是小写的

在vs中蓝色和紫色都是关键字 蓝色都是int long string这些

紫色都是for return这些

常量

整型常量:18

实型常量:1.39(和浮点一样) .93可直接理解为0.93 18.0 等同于18

字符常量:'a'(char)

字符串常量:“123字体”

输出常量

整形:%d

浮点:%f(记为fu)

字符:%c(char)

字符串:%s(string)

所以可以写输出为

printf("%s","这么写是吧");

\r\n是换行 少字母\n会把上一行覆盖

\n 这么写就ok,会自动翻译

printf更适用于打印字符串,所以要用上面的格式写

保留几位小数时候用%.2f这么写 意思是 保留两位

计算时候是从前往后算,所以可以用小括号括起来算逻辑

// 不能多次初始化变量
int a=1;
    int a =2;
    //这就有问题,直接赋值就行,不要再打int

可以同时搞一堆变量,比如int a=10,b=15;逗号隔开

2进制

0-0

1-1

2-10

3-11

4-100

5-101

6-110

自带的计算器可以直接算出来

二进制 0b开头

八进制 0开头

十六进制 0x开头

去掉开头输入数字就可以算出来

16进制 a是10 b是11 以此类推

手撕二进制

公式:系数乘进制数的位置数(权)的方 相加

也可以背诵8421

或者短除法也可以

图片

分辨率 每一个小格子就是一个像素

三原色 红绿蓝 光学三原色 0-255 111,111,111这样写

数据

1b为最小的存储单位

long类型后缀要有l

sizeof(变量/数据类型)可以直接显示出来占几个字节 short 2 int 4 long 4 longlong8

scanf 获取变量并赋值用 和printf一个格式

scanf("%d %d",&a,&b);

可以同时整两个数据

隐式转换

  • 隐式转换 小的变大的取值
  • 小数+整数会变小数 小数更大
  • 比int小的转int 最后运算

强制转化

int b;
//int的b
short i=(short)b;
//强制把大范围变小范围

char的变量会自动查询码表,相加会变成数字序号。

运算符

自增运算符

--减1 ++加1

int b=a++ 先给b再加

int b= ++a 先加1再给b

赋值运算符

b+=a( b=a+b)

加后赋值

关系运算符

a==b 两个等号,

>
    >=
    ==

用printf int 会1/0返回 0假1真

逻辑运算符

与/而且 用 && 同python的and

用||表示 或者

!叫取反 非

短路

只要左边表达式能确定结果,右边就不会算了,连自增都不可实现

三元运算符 ifelse精简版

a>b?a:b;

条件符合?符合:不符合;

优先级

一元>2>3

和》并》赋值

小括号优先

判断流程

0否1是

if( a==1)

{

}
switch (表达式)
{
    case 1:
        XXX;
        break; 
    case 2:
        XXX;
        break; 
    case 3:
        XXX;
        break; 
    case 4:
        XXX;
        break;
    default:
        xxx;
        break;
        
}
循环语句
for(int i=1函数初始;i<=100条件:i++控制)

{

}
goto a;
    a:xxxxx;

👆一键跳转代码

函数
void hanShu(int a,int b)
{
    xxxxx
}

c语言常见函数

math.h

pow次幂

sqrt平方根

ceil进一取整

floor去尾取整

abs绝对值

time.h

time时间

最后修改:2025 年 07 月 28 日
小贴士:本站看板娘是喵布,站长认为她非常可爱!