自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 资源 (1)
  • 收藏
  • 关注

原创 Ubuntu20.04如何安装虚拟机(并安装Android)

在Ubuntu安装虚拟机并且安装安卓模拟器

2023-02-18 23:36:53 2227

原创 如何修改二进制文件(使用VIM)

使用vim修改二进制文件

2023-01-07 19:44:49 856

原创 如何用man查看头文件内容

sudo apt install manpages-posix-dev

2022-04-03 09:30:34 428

原创 如何在ubuntu20.04上安装微信

https://github.com/leimao/Docker-WeChat请看上面这位大佬的链接,别忘了给星。

2022-03-26 15:23:14 399

转载 【转】Linux查看二进制文件的命令

Linux 平台下想要查看二进制文件,可以通过xxd、hexdump或者通过VIM与xxd结合使用。xxdxxd命令为给定的标准输入或者文件做一次十六进制的输出,它也可以将十六进制输出转换为原来的二进制格式。选项-b 用二进制显示一个bit,而不是十六进制-r 以十六进制作为输入,二进制作为输出-s [+][-]seek 从字节开始。+ -分别表示相对于文件的开头和结尾-seek offset 从offset数值开始显示-g 输出显示中以组为单位每组的字节数,默认为2...

2021-04-04 23:55:37 2046

转载 【转】使用ssh密钥登录linux服务器

https://blog.csdn.net/qq_28120673/article/details/99982492?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-0&spm=1001.2101.3001.4242原理ssh密钥连接的原理是利用加密算法生成密钥对。将私匙放在本地电脑上,将公匙放在远端服务器上。1. 生成密匙对ssh-keygen -t rsa # rsa是加密算法,还可以选择dsa...

2021-03-31 22:27:57 468

原创 linux服务器改动后客户机ssh连不上服务器的解决办法

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!Someone could be eave.

2021-03-31 22:26:07 244 1

原创 增加新用户

https://blog.csdn.net/sinat_34886122/article/details/88353871

2021-03-28 19:21:07 61

原创 Ubuntu主机合盖子不休眠

https://blog.csdn.net/xiaoxiao133/article/details/82847936

2021-03-28 01:02:55 407

原创 无法用man手册查看库文件的说明

https://www.cnblogs.com/qinghaowusu/p/12671447.html

2021-01-10 13:08:53 165

原创 我的vim配置文件(未完)

"costomize"set mouse=a "使能鼠标set showcmd "显示命令set ruler "显示标尺set tabstop=4"set softtabstop=4set shiftwidth=4filetype plugin indent onset nu "显示行号syntax on "句法高亮syntax enablecolorscheme desert" Indentset smartindentset cindentset...

2021-01-09 21:15:50 69

原创 关于在虚拟机上安装Ubuntu20.04(最节省时间安装)

https://zhuanlan.zhihu.com/p/38797088 这里是安装Ubuntu20.04的方法,安装的话按照这个教程走就行了,但是关键在于配置完Ubuntu20.04以后,安装软件的时候要将网线拔掉,此时会很快完成安装(10分钟左右),否则的话会花费数个小时,还有可能会安装失败。安装完成后启动Ubuntu会发现什么大多数常用的命令都用不了,比如vim,ifconfig等,而且用apt装啥都无法找到安装包。此时要做下面的操作,用vi工具打开apt源sudo vi /...

2021-01-09 15:58:53 2600

原创 PyCharm的meunbar消失后找回

一切皆因手贱,刚下载了这个软件学python,然后把菜单栏搞没了,然后就傻了,网上找了半天才找到解决办法。小白难顶其实也简单,步骤如下1 快捷键: Ctrl + Shift + A2 选择: Actions3输入: main menu然后菜单栏就回来了...

2020-12-02 19:54:55 169

转载 【转载】Debian/Ubuntu清理硬盘空间的8个技巧

原文章地址:https://www.linuxdashen.com/debianubuntu%E6%B8%85%E7%90%86%E7%A1%AC%E7%9B%98%E7%A9%BA%E9%97%B4%E7%9A%848%E4%B8%AA%E6%8A%80%E5%B7%A7作者:Linux魔法师下面介绍的是 Debian/Ubuntu类Linux发行版磁盘空间不足的8个解决方法。1. 删除残余的配置文件通常Debian/Ubuntu删除软件包可以用两条命令sudo apt-get re

2020-11-03 13:32:29 2386

转载 Device/Credential Guard are not compatible“ win10 pro虚拟机不能打开问题【已解决】【转载】

Last Updated:9/9/2020Categories:Troubleshooting3137Language: Chinese (Simplified)JapaneseEnglish subscribeSymptomsPurposeThis article provides steps to disable Hyper-v for a Windows 10 Host....

2020-10-14 17:07:54 365

原创 C语言学习-多用typedef代表复杂结构

在看Linux 进线程编程时顺便学习信号量,结果看到这个的时候懵了一下:这里我开始以为将 void 起了个别名叫 (*sighandler_t)(int),看了大神davidsky11的 文章恍然大悟, 它定义了一个类型sighandler_t,表示指向返回值为void型(参数为int型)的函数(的)指针。它可以用来声明一个或多个函数指针。 sighandler_t sig1, sig2; 这个声明等价于下面这种晦涩难懂的写法: void (*sig1).

2020-09-16 00:21:25 120

原创 C语言学习-标准IO-fgets/fputs

char *fgets(char *s, int size, FILE *stream);fgets函数功能:fgets()最多从 stream 中读取小于 (size-1) 个字符,并将其存储到s指向的缓冲区(字符数组)中。stream:可以是标准输入,文件size:读取的字符长度返回值:读取成功则返回指向字符数组首个元素的指针,当发生错误或者已经读到文件末尾返回 EOF判断条件:即判断返回值是否等于NULL即可int fputs(const char *s, F...

2020-09-14 23:07:20 134

原创 获取Linux gcc结构体成员类型的方法

对于struct stat 结构体,我想打印输出成员变量,利用 man 手册查到的成员是这样的没有类型名字,也不给示例。从网上搜罗出几种判断数据的类型的方法如下:1、gdb工具中的ptype/whatis命令利用gdb工具中的ptype命令可以找到部分类型的原始类型whwhatis可以判断在该成员的自定义类型名像这样,但是也有成员类型名查不出来的,是什么原因暂未查明,如有大佬知道请告知。明明存在的,下面再使用下面的方法2、用 grep 命令查找原结构体声明,查到.

2020-09-14 10:32:44 395

原创 C语言学习-类型限定符

百度解释:restrict是c99标准引入的,它只可以用于限定和约束指针,并表明指针是访问一个数据对象的唯一且初始的方式.即它告诉编译器,所有修改该指针所指向内存中内容的操作都必须通过该指针来修改,而不能通过其它途径(其它变量或指针)来修改;这样做的好处是,能帮助编译器进行更好的优化代码,生成更有效率的汇编代码.如 int *restrict ptr, ptr 指向的内存单元只能被 ptr 访问到,任何同样指向这个内存单元的其他指针都是未定义的,直白点就是无效指针。restrict 的出现是因为 C 语

2020-09-14 09:10:24 124

原创 GCC编译器结构体默认字节对齐方式

当然变量起始地址是自身所占字节数的整数倍,是默认情况下字节对齐的前提。1、理想情况下,都是按照自身所占字节数进行对齐,此时结构体此时所占空间最大。2、所占字节小的变量所占空间会被下一个所占字节大的变量影响,具体影响有如下几种。小变量所占空间和大变量所占空间相同 前面的小字节变量所占空间和等于下个大字节变量,那么所占空间不边。 3、最大字节对齐量为 4字节总结:gcc编译器和VC编译器的字节对齐方式有些许差别,总的来说VC字节对齐要大一些,而GCC字节对齐方式比较省空间。.

2020-09-03 18:53:43 2216

原创 关键字(extern/static)与标识符的三个属性(链接属性、作用域、存储类别)

链接属性:全局变量和局部变量全局变量定义在函数体外的变量为全局变量。全局变量分为静态全局变量和外部全局变量无特别说明,则全局变量默认为外部全局变量,即可以被定义的源文件外的文件调用作用域静态全局变量:    定义如下一般变量被定义源文件全局可用,且不能被除定义该变量/函数的外部源文件使用。一般变量static int a = 10; //定义一般函数static int add(int a, int b);外部全局变量:     

2020-09-03 16:33:02 254

转载 计算机领域dump的意思

作者:Freeman链接:https://www.zhihu.com/question/285731828/answer/455335550来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。在计算机领域,dump一般译作转储。即使翻译的很贴切,但还是很难从字面上完全理解dump的真正含义。如@莫佳帅子所说 ,dump有动词和名词两种场景,我先解释它作为动词的情况,名词自然就理解了。作为动词我推荐你可以从dump的目的和dump的对象,这两个方面去理解dump本身。

2020-09-02 07:01:41 748

原创 计算整数中1的个数

1 #include <stdio.h> 2 3 int main(int argc, char **argv) 4 { 5 int x; 6 printf("请输入想计算的整数:"); 7 scanf("%d", &x); 8 9 printf("%d中 1 的个数为%d\n", x, Count(x)); 10 11 12 return 0; 13 } 14 15 int Count(int x)..

2020-08-28 15:52:46 306

原创 测试C语言主函数的返回值

C语言主函数的返回值主要分为 return 0; return 1三种形式分别为正常结束,非正常结束;下面用代码来测试一下int main(int argc, char **argv){ printf("My name is DWL\n"); return 0;}这里如果./a.out 如果返回值为真,那么 && 后面的语句才能执行。倘若改为 return 1;两个做对比我们可以看到结果,这里的返回值被编译器接收到了,并

2020-08-25 15:53:31 616

原创 Linux驱动学习----名词解释【To be continue】

用户空间User space is system memory allocated to running applications。uImage 和 zImage 的区别      After the kernel compiles (make), it will generate two files, an Image, a zImage, where Image is the kernel image file, and zImage is an image comp

2020-07-03 01:51:41 218

原创 Linux驱动学习-总线设备驱动模型-LED例程理解

最上层 leddrv.c注册了 file_operations 结构体:将泛化对设备的操作抽象成 file_operations 结构体的四个元素;入口函数:注册file_operations结构体,创建 led_class 以调用 device_create 函数出口函数:移除 led_class 类,注销 file_operations 结构体修饰出入口函数,GPL协议声明第二层 单板1.定义引脚资源 resource;2.建立 platform_device 结构体 &nbs

2020-07-02 17:48:22 152

原创 Liunx驱动学习【1】---hello_drv

作者:黄兢成链接:https://www.zhihu.com/question/27656256/answer/943130123来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。句柄的英文是 handle。在英文中,有操作、处理、控制之类的意义。作为一个名词时,是指某个中间媒介,通过这个中间媒介可控制、操作某样东西。这样说有点抽象,举个例子。door handle 是指门把手,通过门把手可以去控制门,但 door handle 并非 door 本身,只是一个中间媒介。

2020-06-22 22:08:05 180

原创 【汇编学习3】试验7 寻址方式在结构化数据访问中的应用

分析:1、首先要细心的将数据都输入进去,不能有任何差错,轻则语法报错,重则逻辑出错,需要费很大力才能将错误找出来,耽误编程效率2、因为寄存器很少,所以我们要省着点用,能公用的就公用,不能公用的想着办法公用。上面定义的数据段,我们可以看出有3个结构:年份、总收入、公司雇员人数。因为地址是连续的我们可以找到这几个结构的起始地址,相当于C语言中的结构体名分别为:年份=0;总收入:1*4*...

2020-02-12 13:01:00 382

原创 找到一个大佬的github,收藏了好多免费的pdf

https://github.com/tolerious/Programming_learning_resource

2020-02-11 16:03:43 827

原创 汇编语言学习【2】-程序

一个简单的程序一个源程序从写出到执行的过程程序 包含汇编指令和伪指令汇编指令:组成由计算机执行的程序1、伪指令:由编译器来处理(1)、代码段名 segment…… 代码段名 ends定义代码段(2)、end 汇编程序的结束标志(3)、assume 假设,将段名和段寄存器关联assume cs:codesg 段名:c...

2020-02-10 01:09:02 130

原创 C语言学习【23】-结构体

#include <stdio.h>struct Student { int age; float score; char sex;}; //这里就相当于建立一个名字叫做struct Student的数据类型 用这个数据类型可以定义变量 int main(void){ str...

2020-02-09 18:35:02 165

原创 汇编语言学习【1】-寄存器

寄存器:CPU内能够存储数据的器件AX,BX,CX,DX,为什么要分高字节和低字节?因为8086要向上向上兼容80386,80386是 8 位机。程序运行CS:CPU要运行的程序的段地址IP:CPU要运行的程序的偏移地址CS:IP共同指向程序的首地址数据的内存空间 DS : 保存要操作的数据的段地址【addres...

2020-02-09 11:44:30 803

原创 C语言学习【22】-枚举

枚举什么是枚举枚举就是把一个事物的所有取值都一一列举出来。输出结果为:enum WeekDay是一个数据类型,和结构体一样。而且day可以用整形输出,其大小为元素在枚举中的位置枚举的优点看起来更直观经常和switch函数搭配使用...

2020-02-08 23:01:09 76

原创 C语言学习【21】-排序

冒泡排序看了一张动图自己就写出了来了步骤:1、从第一个(0)到倒数第一个(len-1)两两比较,最后得出最大值2、从第一个(0)到倒数第二个(len-2)两两比较,最后得出这个范围内的最大值3、以此类推……输出结果为:还有诸如选择排序等排序方法请参考https://www.cnblogs.com/onepixel/p/7674659.html...

2020-02-08 22:34:30 151

原创 C语言学习【20】-动态变量跨函数调用

啥也不说了上代码输出结果为:这里为什么要用二维指针?因为一个函数调用完成后,就会出栈,该函数所占的内存就会释放掉,所以我们用一维指针 p 指向该内存的话在该内存释放后就不能访问该内存了,那么我们就需要在建立一个动态内存来将该内存的值在还没有释放掉的时候保存它。这时我们就用到了一个malloc函数,我们知道malloc函数返回值是一个地址,我们需要使指针变量 p 指向这个地址。对...

2020-02-08 18:36:13 525

原创 C语言学习【19】-静态变量跨函数调用【我懵逼了,谁能给我讲讲】

直接上代码输出结果为:懵逼的原因:背景为静态变量当然是不能跨函数调用的啊,因为静态变量的内存在函数执行完就释放了啊,除非这个变量在主函数内。那么再看上面的程序f 函数形参为二重指针,这里将 指针变量 p 的地址发送给该函数,然后将 f 函数中的整形变量 i 的地址赋给了 p ,f 函数调用完成后,i 的内存空间也给释放掉了,但是输出 *p 依然能够输出,我很疑惑。带...

2020-02-08 17:26:39 1685 5

转载 虚拟机安装win2000(附key)

下载系统首先先到MSDN我告诉你网站下载Windows 2000镜像文件。(“MSDN我告诉你”是一个专门提供微软的原版系统镜像、Office镜像、其他微软软件下载链接的网站)。复制下载链接到迅雷等下载工具进行下载。配置虚拟机打开VMware Workstation虚拟机软件(这里演示的版本是:VMware Workstation 14 Pro),创建一个新的虚拟机。...

2020-02-08 00:19:08 8531 2

原创 C语言学习【18】-动态内存分配(malloc函数)以及free以后的问题

传统数组的缺点:1、数组长度必须事先制定,且只能是常整数,不能是变量;eg:int a[5] ;//OKint len = 5; int a[len]; //Error2、传统形式定义的数组,在函数运行期间该数组的内存程序员无法手动释放(只能系统释放),系统为该函数中数组所分配的空间会一直存在,直到数组所在函数运行完毕时,数组的空间才会被系统释放。3、数组的长度一旦定义...

2020-02-07 23:02:56 419

转载 MSDN上MS-DOS 6.22的安装方法

标签:DOS,MS-DOS,MS-DOS 6.22,MSDN,Virtual PC,虚拟机标题: MSDN上MS-DOS 6.22的安装方法作者: Demon链接:http://demon.tw/operating-system/msdn-ms-dos-6-22-setup.html版权: 本博客的所有文章,都遵守“署名-非商业性使用-相同方式共享 2.5 中国大陆”...

2020-02-07 22:27:20 3170

原创 C语言学习【17】-指针长度和如何表示变量的地址

指针所占字节就是地址总线的宽度(和其数据类型无关)如果地址总线的宽度是32bit,那么指针所占字节为4字节(4B)如果地址总线的宽度是64bit,那么指针所占字节为8字节(8B)输出结果为:对于指针如果表示一个数据类型的变量的地址?一般指针指向的是该数据类型变量所占内存的首字节单元地址那为什么指针指向的是变量所占内存首地址,而通过指针可以输出变量的值?因为指针的数据类...

2020-02-07 21:18:13 790

android-x86-64-9.0-r2.iso

如何可以访问 https://www.android-x86.org/download.html 可以自行下载 如果不能访问可以下载我这个

2023-02-18

快速搜索工具

可以快速搜索硬盘的文件。。。。。。。。。。。。。。。

2018-04-01

空空如也

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

TA关注的人

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