- 博客(76)
- 收藏
- 关注
原创 C调java获取进程已有的虚拟机
1、一个进程只允许创建一个虚拟机JavaVM *jvm;JavaEnv *env;JavaVMOption option[3];option[0].optionString = "-Djava.complier=NONE";option[1].optionString = "-Djava.class.path=./:.my.jar";option[2].optionString = "-Djava.library.path=/my/path";vm_args.version = JNI_VER
2021-12-28 15:11:35 726 1
原创 shell多次运行./a.out
#!/bin/bashfor i in 1 2 3; do echo 'Execute 3 times' echo $i ./a.out sleep 1sdone
2021-07-20 11:48:08 319
原创 HTTPS协议
跟HTTP一样也要进行TCP的三次握手建立完握手后客户端会把它支持的加密算法通过报文告诉服务器,公钥数字证书:包含CA信息,公钥用户信息,公钥,权威机构签名,有效期; 证书里面有hash算法和CA给的公钥如果hash出来的摘要和公钥解密出来的摘要相同就表明算法是安全的,服务器会从中选择一种加密算法,并且传回一个公钥数字证书.客户端随机生成堆成加密算法秘钥,用服务器给的公钥进行加密,传给服务器因为非对称加密比对称加密更耗时,所以非对称加密一般用来给对称加密的秘钥加密,密文还是用对称加密方法加...
2021-07-18 11:12:10 85
转载 http协议
文章目录概念http报文格式http头字段头字段注意事项常用头字段概念超文本传输协议:HyperText Transfer Protocol它数据的传输是由tcp协议进行http协议是一种无状态的,以请求应答方式运行的协议,它使用可拓展的语意和自描述消息格式,与基于网络的超文本信息系统灵活互动.无状态:本身不会存储用户的信息可拓展的语意和字描述消息格式:可以添加自己的头部字段**字描述消息格式:**比如可以是文本,图片,音频视频,http报文格式connection:keep-alive
2021-07-17 15:41:08 83
转载 Socket长连接短连接
转载概念长连接:整个通信过程,建立连接之后一直连接短连接:每次请求都新建一个sokcet,处理完请求后,关闭sokcet.区别:整个通讯过程示是利用一个socket还是多个socket进行.长连接的流可以关闭java用shutdownOutput/input相对的可以用client.getInputStream()开启C语言:用shutdown(fd,SHUT_RDWR)恢复连接:int connect(int sockfd, const struct sockaddr *addr,so
2021-07-16 16:26:24 309
原创 c语言水仙花数
编译的时候需要加上-lmgcc test3.c -lm#include <stdio.h>#include <math.h>int main(){ int i,x,y,z; for(i=100;i<500;i++){ x = i/10%10; y = i/100%10; z = i%10; if(i == (pow(x,3)+pow(y,3)+pow(z,3))){
2021-07-13 21:38:42 108
原创 c语言冒泡排序法
第二个for循环里每次比较满足条件的都会交换#include <stdio.h>#include <string.h>void swap(int *a,int *b){ int tmp = *a; *a = *b; *b = tmp;}int main(){ int arr[] = {1,4,5,65,34,556}; int len = sizeof(arr)/sizeof(int); printf("len =
2021-07-13 21:18:21 67
原创 c语言选择排序
不是每比较一次都会换#include <stdio.h>#include <string.h>void swap(int *a,int *b){ int tmp = *a; *a = *b; *b = tmp;}int main(){ int arr[] = {1,4,5,65,34,556}; int len = sizeof(arr)/sizeof(int); printf("len = %d\n",len);
2021-07-13 21:07:39 62
原创 单片机的输入输出模式
文章目录上拉电阻下拉电阻上拉输入上拉输入浮空输入模拟输入开漏输出和推挽输出开漏复用输出推挽复用输出上拉电阻把信号初始化为高电平下拉电阻把信号初始化为低电平上拉输入信号–>保护二极管–>经过上拉电阻–>TTL舒密特触发器转换成数字信号–>输入数据寄存器上拉输入信号–>保护二极管–>经过下拉电阻–>TTL舒密特触发器转换成数字信号–>输入数据寄存器浮空输入模拟信号–>保护二极管–>TTL舒密特触发器转换成数字信号–>输入数据寄
2021-07-11 23:04:52 1995
原创 树莓派依赖包安装错误导致的后续软件的安装问题
报错更换正确的源,这里以树莓派4B为例子清掉原来错误的依赖包那先改成buster然后sudo apt autocleansudo apt cleansudo rm /var/lib/apt/lists/mi* -rfsudo apt update执行上述指令的目的是清掉原来的依赖包...
2021-07-11 22:09:21 586
原创 单片机名字解读
STC 89C52RC40C-PDIP0721CV4336STC:代表的是生产公司89:单片机的一个系列52:5后面的数字代表ROM大小,这里是2x4k ,51就是1x4k,还有58,516的,芯片都是一样的,只是ROM大小不同40:表示最大晶振频率是40MHZC:表示商业级 (工作温度范围0°C~85°C),I:是工业级(-40°C~125°C),军工级(-55°C~160°C)PDIP=Plastic Dual Inline Package,朔封双列直插(PLCC=Plastic Le
2021-07-11 01:34:50 1037
原创 PN结复习
PN结:一块本征半导体的两侧通过扩散不同的杂质,分别形成N型半导体和P型半导体.自由电子和空穴复合会留下不能移动的离子电荷区,称为PN结.本征半导体在光照和温度的作用下,它的绝缘性会下降,被束缚的价电子会获得足够的热震动能量来摆脱共价键的束缚,成为自由电子并且留下空穴,这种现象称为本征激发扩散运动:物体因为浓度差而产生的运动称为扩散运动.P型半导体的空穴会向N区扩散,N型半导体的自由电子会向P区移动;PN结因为扩散运动形成的电流称为扩散电流因为扩散运动产生的不能移动的离子电荷区,产生了内电场由于电
2021-07-10 23:55:38 476
原创 寄存器点灯
文章目录目标1.使能APB2上的GPIOC时钟找寄存器目标是点亮STM32电源指示灯D1隔壁的D2D2的对应端口GPIOC131.使能APB2上的GPIOC时钟原因:根据系统结构可知GPIOC在AHB系统总线桥接出来的APB2里面为什么C51不用使能时钟呢?1.任何外设都需要时钟,51单片机,STM32,430等,因为寄存器是D触发器组成的,往寄存器写东西需要时钟输入.C51的时钟是默认开启的,一个时钟开启后所有的功能都可以用了.而STM32,时钟有分工,而且各个时钟的频率不同,我们需
2021-07-10 18:16:29 454 1
原创 编译stm32出现的问题和解决方法
没有定义SystemInit需要在main.c定义这个函数void SystemInit(){}int main(){}提示没有stm32f10x.o需要#include "stm32f10x.h"添加头文件又提示D:/keil/pack/Keil/STM32F1xx_DFP/1.0.5/Device/Include\stm32f10x.h(478): error: ‘core_cm3.h’ file not found添加含有这个头文件的路径连接...
2021-07-10 02:06:01 2319
原创 配置路由器
目录一.恢复出厂设置二.设置wifi名字和密码三.设置上网方式一.恢复出厂设置路由器复位键有两种类型:RESET按钮和RESET小孔。长按3~10秒,指示灯有变化就松开二.设置wifi名字和密码略三.设置上网方式这里MAC,选择手动填写不填的话,电脑的网关就是光猫的网关填了:电脑的网关就是路由器的ip填不填电脑都能和路由器piing的通...
2021-07-05 02:08:58 91
原创 char类型“如实“转换成int类型
#include <stdio.h>#include <stdlib.h>int main(){ char ch = '1'; printf("ch = %c\n",ch); int in = atoi(&ch); printf("in = %d\n",in);}~ atoi:意思是ASCII码to int,它的参数是一个指针
2021-06-25 18:21:20 356
转载 虚拟机ubuntu能联网但是有问号
转发1.造成问题的原因:Linux里面有两套管理网络连接的方案:1、/etc/network/interfaces(/etc/init.d/networking)2、Network-Manager两套方案是冲突的,不能同时共存。第一个方案适用于没有X的环境,如:服务器;或者那些完全不需要改动连接的场合。第二套方案使用于有桌面的环境,特别是笔记本,搬来搬去,网络连接情况随时会变的。他们两个为了避免冲突,又能共享配置,系统就有了下面的解决方案:1、当Network-Manager发现/etc/
2021-06-24 18:19:49 2668 1
原创 implicit declaration of function头文件不能全部放在“头文件“
有一次我把所有的头文件都放在了头文件中,导致了,implicit declaration of function后面看到网上说"*.h"文件放在所以的头文件后面,然后我把原来头文件中的头文件尽可能多的放在main.c前面,就解决了
2021-06-23 18:20:26 217
原创 c语言,分文件编程
代码#include <stdio.h>void myprint(){ printf("hello world");}int main(){ myprint(); return 0;} 拆分后从上到下分别是"head.h",“head.c”“main.c”head.c如果也要添加#include<stdio.h>不然会报错或者想main.c那样添加头文件#include "head.h"也可以编译编译的时候不需要添加hea
2021-06-22 22:57:23 1470 3
原创 word小姿势
Ctrl+n 快速新建一个空白文档Ctrl+z 撤销快捷键Ctrl+Y 恢复快捷键F4 重复上一步操作,只能模仿一步Fn+F4 笔记本重复上一步操作Ctrl+单击 快速选定一句话alt+拖拽 竖向选择先定位光标->开始->编辑->选择相似的文本 可以选择所有相同格式的文本左边空白位置单击:选择一行左边空白位置双击击:选择一段左边空白位置三击:全选Insert:用输入的字替换后面的字添加拼音前先排版鼠标右键->切换域代码:可以隐藏字只留(pīn.
2021-05-08 18:50:12 57
原创 eclipse常用快捷键
常用快捷键(1)Ctrl+Space说明:内容助理。提供对方法,变量,参数,javadoc等得提示,应运在多种场合,总之需要提示的时候可先按此快捷键。注:避免输入法的切换设置与此设置冲突(2)Ctrl+Shift+Space说明:变量提示(3)Ctrl+/说明:添加/消除//注释,在eclipse2.0中,消除注释为Ctrl+\(4)Ctrl+Shift+/说明:添加/ /注释(5)Ctrl+Shift+说明:消除/ /注释(6)Ctrl+Shift+F说明:自动格式化代码(7
2021-04-27 22:16:40 107
原创 我的JAVA学习历程
目录一.数据类型和输出二.控制流程三.循环四.数组五.函数六.输入一.数据类型和输出public class Test { public static void main(String[] args) { System.out.println("hello"); System.out.println("hello2"); int a; a = 10; int b = 20; System.out.println("a="+a); //printf("a=%d"
2021-04-26 23:36:14 1065
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人