课堂笔记一

基于STM32的智能手表环境检测手表(原理图、PCB工程、源代码) 基于STM32的环境检测手表,内置陀螺仪(抬手显示)、气压温度湿度显示、以及几款游戏。基于STM32的智能手表环境检测手表(原理图、PCB工程、源代码)智能手表全套资料,包含原理图、PCB、源代码。 阅读详情

操作系统分为两类 :
非实时操作系统:
Windows 1ms 不等分 0.5 for word procedure , 0.3 for mp3 , 0.2 for painting according to previledge
linux 塞班  民用方面
实时操作系统(RTOS)
微内核 代码很少  vx work(美国)   QNX Itron(日本 (微内核, 代码很少)) MCOSII(教学用) 军事方面 优先级高的先运行  1ms for the whole task 硬件中断(立即对外部事件响应特别快)

Application
Middleware
Driver 

Main 不是关键字,sizeof是关键字
C语言不允许以数字开头



#include <stdio.h>

#define NB "12"

int main(void)
{
char a[3] = "12";
int b = (int)a;
int c = (int)"12";

printf("%d\n%d", c, b);
}

#include <stdio.h>
#include <string.h>

#define N 10

typedef struct Student
{

char stuId[N];
char name[N];
int gender;
unsigned short age;
unsigned int scores;
} student;

int main(void)
{


student stu = {"20093287", "ying", 0, 19, 100};

printf ("%s\t%s\t%s\t%d\t%d\n",
stu.stuId, stu.name, stu.gender?"female":"male", stu.age, stu.scores);

strcpy (stu.name, "yun"); 
printf ("%s\t%s\t%s\t%d\t%d\n",
stu.stuId, stu.name, stu.gender?"female":"male", stu.age, stu.scores); 

return 0;
}

#include <stdio.h>
#include <windows.h>
#include <conio.h>

enum sound
{
a = 262, b = 294, c = 330, d = 349,
e = 392, f = 440, g = 494
}var;

int main(void)
{ 

while (1)
{ 

switch(getch())
{

case '1':
Beep(a, 100);
break;
case '2':
Beep(b, 100);
break;
case '3':
Beep(c, 100);
break;
case '4':
Beep(d, 100);
break;
case '5':
Beep(e, 100);
break;
case '6':
Beep(f, 100);
break;
default:
break;
}
} 

return 0;
}

#include <stdio.h>

int main()
{
int *p ;
int a = 0x12345678;
char *pa = (char *)&a;

for (int i = 0; i < 4; i++)
{
printf ("%x---%x\n", pa+i, pa[i]);
} 

printf ("1\01");

return 0;
}

#include <stdio.h>
#include <string.h>

#define N 100

int encrypt(char *, char *);

int main()
{
char source[N];
char dest[N];

scanf("%s", source);

encrypt(source, dest); 
dest[strlen(source)] = '\0';

printf(dest);

return 0;
}

int encrypt (char source[], char dest[])
{
int length = strlen(source);
int i = 0;

for (i = 0; i < length; i++)
{
if (source[i] > 'z' || source[i] < 'A')
{ 
dest[i] = source[i];
continue;
}

if (dest[i] >= 'w')
{
dest[i] = dest[i]-'w'+'a';
continue;
}
else if (dest[i] <= 'Z')
{
if (dest[i] >= 'W') 
{
dest[i] = dest[i]-'W'+'A';
}
}
dest[i] = source[i]+4;
}

return 1;
}

   

直流无刷减速电机选型指南:从KV值到霍尔传感器,新手必看的5个关键参数 本文详细解析直流无刷减速电机选型的5个关键参数,包括KV值、转矩、电流与功率、减速比选择以及霍尔传感器配置。通过实战案例和避坑策略,帮助工程师精准匹配电机性能与负载需求,提升工业自动化设备的可靠性和效率。特别强调霍尔传感器在精准控制中的关键作用。 阅读详情

相关推荐

Coze知识库搭建:智能化管理与高效检索实践

知识管理系统是现代企业信息资产管理的核心基础设施,其核心原理是通过结构化存储和智能检索技术实现知识的快速流转。在技术实现上,基于NLP的语义理解引擎和知识图谱构建是关键,能够显著提升检索准确率和知识关联性。以Coze平台为例,其针对中文场景优化的分词算法和多模态处理能力,可有效解决技术文档管理中的术语识别和格式兼容问题。这类系统在开发团队知识沉淀、新员工培训等场景中价值显著,特别是当集成RBAC权限模型和自动化备份策略后,既能保障信息安全,又能实现持续的知识迭代。通过合理配置同义词扩展和权重调整,可使搜索命

weixin_29041195的博客 262

C语言打印爱心代码

【代码】打印爱心。

m0_73417372的博客 1173

Python对接海康威视机器视觉工业相机

工业相机只允许单条连接,也就是说MVS如果连接了相机,python代码就无法获取数据,此时必须。相机工具类(读者直接复制)HKCamera_class.py。博主这里出现了一个警告:获取不到相机参数。四、使用Pycharm打开Python代码示例文件夹。三、找到MVS示例代码(代码在MVS的安装位置)二、解压并安装MVS客户端。一、下载MVS客户端。安装一下opencv。

Good Luck 2万+

C语言爱心代码

【代码】C语言爱心代码。

weixin_51665718的博客 833

【一】Android MediaPlayer整体架构源码分析 -【初始化和创建】

本系列文章分析的安卓源码版本:【Android 10.0 版本】 一、MediaPlayer的简单调用关键流程 【这只是一个简单使用过程示例】 // 此处变量声明省略 private void play() { // 先获取SurfaceHolder mSurfaceView = findViewById(R.id.surface_view); mSurfaceHolder = mSurfaceView.getHolder(); mSurfac

CloverLHao的博客 4347

2026年9月20日 2026年CSP-S初赛真题整理

这是本次考试最难的部分,涉及Gray Code(格雷码)+ 状态压缩 + 数学推导难点解决方案关键代码问题转化将得分差转化为m−2xim - 2x[i]m−2xi高效枚举Gray Code相邻状态O(1)转移奇偶判断利用奇偶性统一条件。

weixin_51184047的博客 625

C语言(爱心表白代码)

小伙伴们,快拿去表白吧!!! #include<stdio.h> #include<Windows.h> int main() { system(" color 0c");//设计程序颜色 printf("遇见你是一件很开心的事情,爱你哟!!!\n");//打印文字 float x,y,a;//定义变量x,y,a for(y=1.5f;y>-1;y-=0.1f) { for(x=-1.5f;x<1.5f;x+=.05f){ a=x*.

weixin_56761388的博客 3万+

计算机组成原理课程设计_微程序控制的简单模型机设计

微程序控制的简单模型机设计 要求 基本要求 完成一个简单主机的设计,模型机应具备如下能力:在自行设计的指令集基础上,运行自行编写的简单用户程序,实现特定运算功能。 弹性要求 在此基础上,完成必要的扩展,实现模型机的功能扩展设计,包括:实现多种运算功能(指令集的扩充)、支持更为丰富的寻址方式、有更为完善的微程序设计等。 实验软件和硬件环境 QuartusII, FPGA计算机组...

sailist的记录站 3万+

c语言的一些程序

c语言-浪漫程序员的浪漫 程序员的浪漫 #include<stdio.h> #include<windows.h> int main(){ float x,y,a; for(y=1.5;y>-1.5;y-=0.1){ for(x=-1.5;x<1.5;x+=0.05){ a=x*x+y*y-1; putchar(a*a*a-x*x*y*y*y<=0.0?'*':' '); } system("color 0c"); putchar

dpasdfjk66的博客 2555

当交警手势遇见边缘计算:轻量化手势识别系统的落地挑战

本文探讨了边缘计算环境下交警手势识别系统的技术挑战与解决方案,结合OpenPose和LSTM算法优化,实现轻量化部署。通过深度可分离卷积、量化感知训练等技术创新,在算力受限的边缘设备上达到高效实时识别,为智能交通系统提供可靠支持。

weixin_29079671的博客 636

本地部署大模型 vs 网页版大模型区别

fill:#333;color:#333;color:#333;fill:none;本地服务器/工作站硬件资源私有化部署GPU集群高速存储模型文件训练框架推理引擎。

Ds-Rag的博 1712

Mysql课堂笔记(一)

在输入密码时,为了安全起见,密码不会显示在屏幕上。- 鼠标操作方式:按下 WIN+R 组合键,打开“运行”对话框,输入 services.msc ,回车后打开服务管理器,找到 mysql80 服务,右键点击该服务,在弹出的菜单中选择“启动”或“停止”选项,即可启动或停止 MySQL 服务。- 控制面板卸载:按下 WIN+R 组合键,打开“运行”对话框,输入 control ,回车后打开控制面板,在其中找到“卸载程序”选项,在程序列表中找到与 MySQL 有关的组件,点击“卸载”按钮进行卸载。

weixin_64932876的博客 1486

飞行机械臂设计

其后对飞行机械臂系统的机 理模型和基于 ADAMS 的物理模型进行了控制系统的搭建,对于机理模 型,设计了三个输入通道,分别是俯仰力矩,翻滚力矩与偏航力矩,控 制量为翻滚角,俯仰角,偏航角。四旋翼无人机自身具有独特的优势,在无人机上增加机械臂,整个 机体系统相当于一架空中行动自如的空中机器人,可以适应更多的应用场合,能够实现空中抓取,运输载荷,巡航监视等任务。的函数模块如图 4-8 所示,可见输入为 U1,U2,U3,U4,分别对应总力矩,俯仰力矩,翻滚力矩,偏航力矩,控制 量为俯仰角,翻滚角,偏航角。

coldmood77的博客 2915

Mysql课堂笔记一

用户可以对数据库中的数据进行增加、删除、修改、及查询操作,还有其他更为复杂的操作,如备份、导出、加密、转换其他DB。1.MySQL开源免费的数据库,中小型数据库,已被 Oracle公司收购,MySQL6.X版本也开始收费。1.数据库是存储数据的仓库,其本质是一个文件,实质是数据按照特定的格式存储起来。1.Java 是通过变量存储数据,4类8个基本数据类型,引用类型--->内存。2.方便存储和管理数据 存储数据使用二维表的格式 行和列的格式。2.数组、集合是来存储数据--->内存。

2502_90885631的博客 187

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

java实习课堂笔记一

java实习课堂笔记一工作环境配置JDKIDEAMySqlMySql图形界面管理工具项目入门练习MySql练习实验 工作环境配置 在开始java项目工作前,我们需要配置好我们的工作环境。需要的配置环境包括JDK、IDEA、MySql以及MySql图形界面管理工具。 JDK JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK),因此想要运行java程序,必须要安装JDK。JDK也有很多的版本,本次实习所需使用的版本是1.8.0_181。至于如何去进行配置JDK,网

wo_diu_ni_lao_mu的博客 1244

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

深度学习吴恩达老师课堂笔记(一)

深度学习吴恩达老师课堂笔记(一) 主要都是自己上课做的笔记,目录结构参考了完结撒花!吴恩达DeepLearning.ai《深度学习》课程笔记目录总集_深度学习笔记 吴恩达-优快云博客.不过这个博主的笔记也记得挺详细的,这里给点个赞 1. 神经网络和深度学习 【主要都是在讲一些机器学习的内容,所以这里不再重复做笔记了,只记录一些零散的知识点】 ReLU函数(Rectified Linear Unit, 修正线性单元)ReLU(x)=max⁡{x,0}\textrm{ReLU}(x)=\max\{x,0\}R

m0_51323388的博客 268

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

课堂一笔记

1.变量:无需关键字  不需要声明n=102.强类型语言3.print() 换行  ;print(n,end="")4.intput() 可以直接输出5.单行注释#  多行注释 (三个单引号或多引号)'''有两个作用:注释       定义换行的字符串在python中, 单引号和双引号没什么区别6.基本数据类型Number数字       (含复数类型) Boolean真正还是0  1  可以进行...

killer47tgs的博客 164

javaweb课堂笔记(一)

文章目录javaweb课堂笔记(一)一、tomcat服务器二、JSP1、JSP执行特点2、JSP语法特点4.指令1)page2)指令三、表单(登录)四、九大内置对象 javaweb课堂笔记(一) 一、tomcat服务器 1、服务端组件 控制层:接收、分析、分发请求,转向视图组件,封装用户请求参数 业务层:Bean 处理请求 持久层:Dao 数据访问层,封装对外部数据的操作(数据库 文件) 视图...

倩mys的博客 1874

网页课堂笔记一

尚硅谷课程笔记 1.1,2.2,3.3章—HTML的介绍 4.4章网页的基本结构 1、标签 标签分为开始标签<标签内容>和结束标签

Seven1_xwx的博客 200

JavaScript课堂笔记一

1、概述 1.1 什么是JavaScript? 1.1.1 概念 JavaScript 是脚本语言,是一种解释性脚本语言(代码不进行预编译) JavaScript 是一种轻量级的编程语言。 JavaScript 是可插入 HTML 页面的编程代码。 JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。 JavaScript 很容易入门。 1.1.2 作用 1、为网页添加各式各样的动态功能, 2、为用户提供更流畅美观的浏览效果。 通常JavaScript脚本是通过嵌入

woshinibabaang的博客 263

一阶段课堂笔记——集合

1.集合与数组的区别 (1)数组长度固定,集合长度不固定 (2)数组可以存储基本数据类型也可以存储引用数据类型;集合中存储的元素类型只能是引用类型 (3)数组是定长的,一旦初始化长度就不能修改;而集合可以修改,可以删除、添加元素 2.集合框架 Collection集合的框架结构: Map集合的框架结构: ...

White_yang1的博客 187

AI实践课堂笔记(一)

这是我加入AI实训队伍的第一节课程,接触了Miniconda这款轻量级包和环境管理工具,它不仅能管理包,还能隔离和管理不同python版本的环境。Miniconda所有的操作命令皆在命令行中完成,没有GUI界面。这对我来说是一种新奇的体验。我还认识了Jupyter Notebook这个对我学习程序编码极其有用的工具。简而言之,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。

siriusj19的博客 921

课堂笔记(一)

1. 计算机组成原理、体系结构、微机接口之间的关系自顶向下,从抽象到具体分别是:体系结构>组成原理>微机接口1、 体系结构讲的是计算机有哪些功能,是对程序员可见的系统属性,且能直接影响到程序的逻辑执行(包括指令集、数据类型、存储器寻址技术、I/O机理等等)。这里边包含的技术就包罗万象了,包括大型机和微机中所应用的技术,主要内容是学习指令的流水技术,动态调度,静态调度等等,这是IC设计者应该考虑的事了

柠檬汽水好喝 282
上一篇: 简单的介绍BroadcastReceiver的使用方法
下一篇: 作业
evilying
博客等级 码龄16年 35粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值