自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 作用域、连接属性与存储类型

none 总是当作独立的实体,即多个声明当作不同实体,通常局部变量为该属性。register 可用于自动变量的声明,将其变为寄存器变量,储存与寄存器中。1.修饰函数或全局变量时,将改变其链接属性,其储存类型与作用域不变。static 声明在代码块外部的变量为静态变量,储存域静态内存中。2.修饰局部变量时,将改变其储存类型,但其链接属性与作用与不变。auto 声明在代码块内部的变量为自动变量,储存在堆栈中。即指储存变量的值的内存的类型,其决定了变量的创建、销毁。一个标识符的作用域即它可以被使用的区域。

2023-06-14 21:39:18 37

原创 6.14 shell脚本

表达式:1.test 2.[判断] 每个变量必须相隔,相当与将test变为[]rm [^134].c 除了1.c 3.c 4.c其它一位的.c。rm [1234].c 删除1.c 2.c 3.c 4.c。mkdir {1,2,23} 创建1.c 2.c 23.c。字符串测试: test 字符串1 = 字符串2 是否相等。整数测试:test a -eq b 判断a、b是否相等。文件测试:test -d name name是否为目录。val=$[2**3] 2的3次方。-a:与 -o:或!

2023-06-14 20:06:44 47

原创 6.13 sell命令续

软连接:其通过文件的路径建立链接,链接的文件不能丢失,如果文件丢失,软连接文件就会失效。-a 显示该进程的完整指令及参数, 如果是被记忆体置换出去的进程则会加上括号。-a 显示所有物理文件系统的使用情况,包括虚拟文件系统,如/proc、/sys等。gzip -n filename:选择压缩的幅度,n为1-9,1为压缩幅度最小。deluser --remove-home + 用户名 工作目录一并删除。-z 由tar生成归档,然后由gzip压缩。从右到左运算,运算完再打印,--与++在后先取值。

2023-06-13 18:58:43 35 1

原创 printf多参数与++,--

若--或++在前,则会先计算该变量前所以的表达式,包括逗号运算符,最后再返回变量的值。运算表达式结束了,此时拷贝--a这个参数的值10,再拷贝++b参数的值20。--a a自减变为9 但--在前要等前面的运算结束后才拷贝a的值。printf首先是将参数从右到左读入队列中,所以参数从右开始运算。b-- --在后面,先拷贝b的值21 b再自减为20。++b b变21 但b的值要等前面运算完后才拷贝b的值。a++ 先拷贝a的值9 a再自加变为10。若是--或++在后,直接先取值再运算。

2023-06-13 18:54:50 232 1

原创 6.12 shell命令

1.嵌入式:以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、功耗、成本、体积、可靠性有严格要求的专用计算机系统。/var/cache/apt/archives 安装包的存放位置。apt-get clean name 清除软件配置。cd ~:返回用户目录、直接啥也不加也返回到当前家目录。apt-get install name 安装。apt-get remove name 卸载。apt-get updata name 更新。c:字符设备(鼠标、串口、键盘等)

2023-06-12 20:04:50 33 1

原创 cstudy 6.6

printf() d 十进制;修饰符 %4d 数据宽度;%#x 加前缀0x;%.2f 小数点后的位数;scanf("%[^\n]%*c", str)读取需要空格的字符串,%*c吸收换行*抑制符表示不赋值。register 储存在寄存器中此时无指针概念,编译时也有可能在内存条中。先右看再左看 *q[5] (*q)[5] 分辨指针数组与数组指针。p++ ++p等表示的其实是p或p+1的值的副本。目前可理解为:声明在函数外的变量,储存在数据段中。

2023-06-06 20:57:58 27 1

原创 cstudy 6.5

思路:让整数a与1移k位(sizeof(a)*8-1~0)相与,若为1则输出1、若为0则输出0。//*(*(p+i)+j)==p[i][j]==*(p[i]+j) 都表示a[i][j]//&a[0][0]+1*4+2 == &a[0][0]+4+2 即式中*号表示乘法。//&a表示地址为&a[0]但偏移量为12。a=a|(5

2023-06-05 20:56:47 64 1

原创 指针与数组总结

(*(a+1)+1)==*(a[1]+1)//等于a[1][1] a换成p同理 只是说a不可变 p可变。1.&表示取地址 *表示取内存数据(在一些复杂表达式中可能是乘法的意思,注意区别)int *p2=&a[0][0];//等同于 int *p2=a[0];&a表示变量的地址 若为数组指针赋值时表示指针偏移量为数组大小(byte)//等同于 int *p1=&a[0];//等同于 int *p1=a[0];a[1]+1//a[1][1]的地址。二维数组 数组的元素是一个数组。a+1//a[1]地址。

2023-06-05 16:00:32 23 1

原创 Cstudy 6.3

整数 int 4字节 short 2字节 long 8字节 有符号(省略signed):-2^(n-1)~2^(n-1)-1 无符号:0~2^n-1。有符号 正数--符号位为0,其余补码==原码;总结:char本质是整数 、补码的原理没理解透、记住非 算 关 与或 赋。汇编 gcc -S test.i -o test.s。二进制 gcc -C test.s -o test.o。预处理 gcc -E test.c -o test.i。

2023-06-03 20:11:18 31

原创 c学习 1

长度计算 sizeof(a)/sizeof(a[0]) 二维数组 sizeof(a)/sizeof(a[0]) sizeof(a[0])/sizeof(a[0][0])二维 int a[2][3]={{1,2,3},{1,2,3}} 就相当于数组的元素也是数组。嵌套遍历 从j=0开始直到n-i-1,a[j]依次与a[j+1]比较大小,若大或小交换位置。依次与假设min比较,符合条件改变min的值,最后交换a[i],a[min]的值。多个循环退出最近循环;交换a[i]与a[max]的值。

2023-06-01 15:38:48 45 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除