关键词Byte相关知识与实用类的深入理解

技术人的知识索引思维:从信息搬运工到知识架构师 在软件开发领域,‘知识管理’远不止于收藏书单或笔记,其本质是构建可检索、可演进、可验证的个人认知系统。核心在于理解知识的分层结构——底层是计算本质(如抽象、状态机),中层是系统认知(如缓存、虚拟内存、并发模型),上层才是框架语法与API细节。这种结构决定了技术能力的迁移性与抗衰性:吃透《计算机程序的构造与解释》中的高阶函数思想,能自然迁移到.NET的中间件委托链设计;掌握《深入理解计算机系统》的局部性原理,可直接优化LINQ查询与List<T>内存访问模式。知识索引的价值,正在于将离散经验锚定到这些通用原理 阅读详情
(流操作,加密处理,图像处理等的基础准备)
 
Byte,long,int,short,char,
 
 ( 1 )Byte 的解说:
byte 关键字代表一种整型,该类型按下表所示存储值:
类型   范围   大小  .NET Framework 类型  
byte
 0 到 255
  无符号 8 位整数
 System.Byte
 
标识符
可如下例所示声明并初始化 byte 类型的变量:
 
byte myByte = 255;
在以上声明中,整数 255 从 int 隐式转换为 byte 。如果整数超出了 byte 的范围,将产生编译错误。
 
转换
存在从 byte 到 short 、 ushort 、 int 、 uint 、 long 、 ulong 、 float 、 double 或 decimal 的预定义隐式转换。
不能将更大存储大小的非文本数值类型隐式转换为 byte 。 有关整型的存储大小的更多信息,请参见整型表( C# 参考)。例如,请看以下两个 byte 变量 x 和 y :
    byte x = 10, y = 20; ( 会出错,因为该非文本数值类型存储大小大于 byte)
以下赋值语句将产生一个编译错误,原因是赋值运算符右侧的算术表达式在默认情况下的计算结果为 int 类型。
// Error: conversion from int to byte:
byte z = x + y;
若要解决此问题,请使用强制转换:
// OK: explicit conversion:
byte z = (byte)(x + y);
但是,在目标变量具有相同或更大的存储大小时,使用下列语句是可能的:
int x = 10, y = 20;
int m = x + y; ( 正确,因为 int 类型存储大小大于 int)
long n = x + y; ( 正确,因为 long 类型存储大小大于 int)
同样,不存在从浮点型到 byte 类型的隐式转换。例如,除非使用显式强制转换,否则以下语句将生成一个编译器错误:
// Error: no implicit conversion from double:
byte x = 3.0;
// OK: explicit conversion:
byte y = (byte)3.0;
调用重载方法时,必须使用显式转换。 以下面使用 byte 和 int 参数的重载方法为例:
public static void SampleMethod(int i) {}
public static void SampleMethod(byte b) {}
使用 byte 强制转换可保证调用正确的类型,例如:
// Calling the method with the int parameter:
SampleMethod(5);
// Calling the method with the byte parameter:
SampleMethod((byte)5);
 
( 2 )byte 的实例
1.
把 char 类型转换成两个 byte ,第一个比特存 unicode 的第一个字节,第二个存 unicode 的第二个字节 :
char   a='a12335';  
 string   s=Convert.ToString(a);  
 byte[]   b=System.Text.Encoding.Unicode.GetBytes(s);// 转为 byte 数组
2.
怎样把 byte 转换为 char* 类型的 :
CString   tt;  
 BYTE   buf[100];  
 tt.Format(_T("%s"),buf);  
 char   *   kk=tt.GetBuffer(tt.GetLength());  
  上面是可以的 
  或者你也可以用 strcpy.
 
3.
byte 相关的处理类
一个处理BYTE和其它类型转换的类:
public class Tools{
 //16进制
    private static String HexCode[] = {
        "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
        "a", "b", "c", "d", "e", "f"
    };
    private Tools(){
    }
 
 //将byte类型转换为16进制字符串
    public static String byteToHexString(byte b){
        int n = b;
        if(n < 0)
            n = 256 + n;
        int d1 = n / 16;
        int d2 = n % 16;
        return HexCode[d1]+HexCode[d2];
    }
 //将byte数组转换为16进制字符串
    public static String byteArrayToHexString(byte b[]){
        String result = "";
        for(int i = 0; i < b.length; i++)
            result = result+byteToHexString(b[i]); ( 字符串并,注:不同于算术加 )
        return result;
    }
 
 //将byte数组第offset个元素起的4个字节转换为int值
    public static int byte2int(byte b[], int offset)
    {
        return b[offset + 3] & 0xff | (b[offset + 2] & 0xff) << 8 | (b[offset + 1] & 0xff) << 16 | (b[offset] & 0xff) << 24;
    }
 //将byte数组转换为int值
    public static int byte2int(byte b[])
    {
        return b[3] & 0xff | (b[2] & 0xff) << 8 | (b[1] & 0xff) << 16 | (b[0] & 0xff) << 24; ( << 位左移;假如传入1234式中可以看出 b[0] 为1, b[1] 为2, b[2] 为3, b[3] 为4, 返回的目标结果为:1234 ;从类byte2int,byte2long可以看出int为4个byte的长度, long为8个byte的长度, short为2个byte的长度)
    }
 //将byte数组转为long值
    public static long byte2long(byte b[])
    {
        return (long)b[7] & (long)255 | ((long)b[6] & (long)255) << 8 | ((long)b[5] & (long)255) << 16 | ((long)b[4] & (long)255) << 24 | ((long)b[3] & (long)255) << 32 | ((long)b[2] & (long)255) << 40 | ((long)b[1] & (long)255) << 48 | (long)b[0] << 56;
    }
 //将byte数组第offset个元素起的8个字节转为long值
    public static long byte2long(byte b[], int offset)
    {
        return (long)b[offset + 7] & (long)255 | ((long)b[offset + 6] & (long)255) << 8 | ((long)b[offset + 5] & (long)255) << 16 | ((long)b[offset + 4] & (long)255) << 24 | ((long)b[offset + 3] & (long)255) << 32 | ((long)b[offset + 2] & (long)255) << 40 | ((long)b[offset + 1] & (long)255) << 48 | (long)b[offset] << 56;
    }
 
 //将int类型转为byte数组
    public static byte[] int2byte(int n)
    {
        byte b[] = new byte[4];
        b[0] = (byte)(n >> 24);
        b[1] = (byte)(n >> 16);
        b[2] = (byte)(n >> 8);
        b[3] = (byte)n;
        return b;
    }
/**
 *n 为待转数据,buf[]为转换后的数据,offset为buf[]中转换的起始点
 * 转换后数据从低到高位
 */
    public static void int2byte(int n, byte buf[], int offset)
    {
        buf[offset] = (byte)(n >> 24);
        buf[offset + 1] = (byte)(n >> 16);
        buf[offset + 2] = (byte)(n >> 8);
        buf[offset + 3] = (byte)n;
    }
    public static byte[] short2byte(int n)
    {
        byte b[] = new byte[2];
        b[0] = (byte)(n >> 8);
        b[1] = (byte)n;
        return b;
    }
    public static void short2byte(int n, byte buf[], int offset)
    {
        buf[offset] = (byte)(n >> 8);
        buf[offset + 1] = (byte)n;
    }
    public static byte[] long2byte(long n)
    {
        byte b[] = new byte[8];
        b[0] = (byte)(int)(n >> 56);
        b[1] = (byte)(int)(n >> 48);
        b[2] = (byte)(int)(n >> 40);
        b[3] = (byte)(int)(n >> 32);
        b[4] = (byte)(int)(n >> 24);
        b[5] = (byte)(int)(n >> 16);
        b[6] = (byte)(int)(n >> 8);
        b[7] = (byte)(int)n;
        return b;
    }
    public static void long2byte(long n, byte buf[], int offset)
    {
        buf[offset] = (byte)(int)(n >> 56);
        buf[offset + 1] = (byte)(int)(n >> 48);
        buf[offset + 2] = (byte)(int)(n >> 40);
        buf[offset + 3] = (byte)(int)(n >> 32);
        buf[offset + 4] = (byte)(int)(n >> 24);
        buf[offset + 5] = (byte)(int)(n >> 16);
        buf[offset + 6] = (byte)(int)(n >> 8);
        buf[offset + 7] = (byte)(int)n;
    }
   
}
*************************************************************************************
byte[] b = {00,00,00,00};
int i = ((b[0] << 24) + (b[1] << 16) + (b[2] << 8) + (b[3] << 0));
System.out.println(i); 
System.out.println(Integer.parseInt(new String(b,0,4))); 
结果:
都是由BYTE[]转换为INT,但
第一条打印语句得到结果:0
第二条出错,因为new String(b,0,4)为"    "
原因如下:
(1)每四个byte可转换成一个int,因为int=4 byte
取出4个byte
int i = (int)b[0] | ((int)b[1] << 8) | ((int)b[2] << 16) | ((int)b[3] << 24);
上面用的是+
(2)0转换为字符串是/0,把二进制零转不成字符串的,因为/0是不可见的 
 
深入理解LLM核心:Token与Embedding的工作原理与实战应用 在自然语言处理与大型语言模型(LLM)领域,文本的数字化表示是核心技术基础。其核心原理是将人类可读的文本转换为机器可处理的数值形式,这一过程是实现语义理解与计算的前提。从技术价值看,高效的文本表示能显著提升模型处理效率、降低计算成本,并直接影响下游任务(如搜索、问答、生成)的性能。在实际应用场景中,这具体体现为两个关键技术:Tokenization(分词)将文本切分为模型可识别的子词单元,是控制上下文长度和计算成本的关键;Embedding(向量嵌入)则将离散的Token映射为连续的稠密向量,在向量空间中编 阅读详情

相关推荐

深入理解大语言模型:从Transformer原理到RAG与微调实战

大语言模型(LLM)作为当前人工智能领域的核心技术,其本质是基于Transformer架构的自回归生成式模型。其核心原理在于通过海量数据预训练,学习文本序列的统计规律,从而获得强大的语言生成与上下文理解能力。这一技术价值在于,它将自然语言处理任务统一到了一个通用的序列建模框架下,使得模型能够通过提示工程、微调或RAG(检索增强生成)等技术,灵活适配各类下游应用场景。在实际工程中,理解LLM的核心能力与固有局限(如幻觉问题)是构建可靠系统的前提。例如,在处理需要实时、精确知识的任务时,RAG架构通过结合外部知

cumo3681的博客 619

关键词Byte相关知识与实用类的深入理解(流操作,加密处理,图像处理等的基础准备)

关键词Byte相关知识与实用类的深入理解(流操作,加密处理,图像处理等的基础准备) Byte,long,int,short,char,  ( 1 )Byte的解说:byte 关键字代表一种整型,该类型按下表所示存储值:类型  范围  大小  .NET Framework 类型  byte  0 到 255 无符号 8 位整数 System.Byte  

編程愛好的专栏(球) 1388

PyTorch从零实现Seq2Seq翻译器:深入理解Encoder-Decoder与Attention机制

Seq2Seq(序列到序列)是自然语言处理中处理变长输入输出任务的基础范式,其核心在于Encoder-Decoder架构与Attention机制的协同工作。Encoder将源序列压缩为隐状态序列,Decoder则基于当前隐状态与Attention动态聚焦的上下文逐词生成目标序列;Attention本质是Query-Key-Value三元匹配,实现源-目标词间软对齐。该技术支撑神经机器翻译、文本摘要等关键应用,具备强可解释性与工程可调试性。本文聚焦PyTorch原生实现,覆盖embedding初始化、LSTM

子夜轻风 367

Java关键字—基本数据类型

Java关键字之—基本数据类型 byte、shout、int、long、float、double、boolean、char 关键字 byte、shout、int、long、float、double基本数据类型中的数值型,且在保存数据时第一个bit要作为符号位进行整形符号的保存,0为正数,1为负数。 byte(字节) 在计算机存储中以字节为单位,8位比特(bit)组成一个字节 byte是由8位bit组成,每个bit只能是0或1,所以byte一共有2的8次方种可能,也就是256个,存放的数据范围是-128~

古城的博客 1739

基于ESP8266与WS2812B的8x8 LED点阵多彩时钟设计与实现

嵌入式系统开发中,LED点阵显示与实时时钟(RTC)是基础且重要的技术模块。其原理在于通过微控制器(如Arduino、ESP8266)的GPIO口,配合特定的通信协议(如单总线协议)或驱动芯片,控制LED阵列的亮灭与色彩。这项技术的核心价值在于,它不仅是学习嵌入式硬件接口编程和实时系统概念的绝佳实践,更能构建出兼具信息显示与视觉交互功能的小型智能设备。在物联网(IoT)和创客项目中,此类技术广泛应用于环境信息显示、个性化桌面装饰及智能家居状态指示等场景。本文聚焦于如何利用ESP8266的Wi-Fi功能和WS

weixin_34054866的博客 438

深入理解ext4文件系统配置:集群与日志管理

本文深入探讨了ext4文件系统的高级配置选项,包括集群管理、元数据局部性优化、日志文件系统的选择与创建等。通过分析mke2fs工具的参数,文章揭示了如何通过集群数量、inode比率、日志大小和类型等设置来提升文件系统的性能和可靠性。

weixin_42499004的博客 405

Java byte 关键字(keyword)

Java关键字是对Java编译器有特殊含义的字符串,是编译器和程序员的一个约定,程序员利用关键字来告诉编译器其声明的变量类型、类、方法特性等信息。Java语言共定义了如下所示的关键字。本文主要介绍Java byte 关键字(keyword)。 原文地址:Java byte 关键字(keyword) ...

亮亮的专栏 471

win11系统ping另一台电脑上VMware虚拟机的IP

我是用了两台电脑,所以刚才遇到一个问题就是两台电脑的IP 在同一局域网内ping不通。于是就找了很多资料,经过坚强的绝望后终于解决了。 下开始解决问题: VMWare提供了三种工作模式:bridged(桥接模式)、NAT(网络地址转换模式)和host-only(主机模式)。 1. bridged(桥接模式)   在这种模式下,VMWare虚拟出来的操作系统就像是局域网中的一台独立主机,它可以访问网内任何一台机器。在桥接模式下,你需要手工为虚拟系统配置IP地址、子网掩码,而且还要和宿主机器处于同一网段,这样虚

qq_42817360的博客 3239

ios修饰词总结

ios总共有这些修饰词:assign、weak、strong、retain、copy、nonatomic、atomic、readonly、readwriteassign ( ARC/MRC )整型/浮点型等数据类型都用这个词修饰 .如果没有使用 weak strong retain copy 修饰 , 那么默认就是使用 assign 了.assign也可以修饰对象 , 只是对象的计数器不会+1we...

lee727n的博客 715

SAP FI 提示没有为会计年度0 定义版本2025 GP626

SAP 错误 GP626 是一个常见的系统消息,通常表示某个会计年度的版本(如版本 0)未被定义或未激活。:在执行某些事务(如创建采购订单、过账凭证或维护成本中心)时,系统会检查相关版本是否已定义。的“Settings for Each Fiscal Year”界面中,选择一个已激活的会计年度。的“Settings for Each Fiscal Year”界面中,找到未激活的会计年度。:在控制范围(Controlling Area)中,未为指定的会计年度定义版本 0。如果没有,添加或复制现有年度的设置。

GAVIN 2493

4.7W防削顶单声道D类音频功率放大器HT6872介绍

HT6872是一款低EMI,防削顶失真,单声道免滤波D类音频功率放大器。在6.5V电源,10%THD+N,4Ω负载条件下,输出4.71W功率,在各类音频终端应用中维持高效率并提供AB类放大器的性能。

weichen_78的博客 4703

java关键字(一)——byte,int,long,short

本文主要说明了java数据类型 byte、short、int、long 的取值范围,数据溢出时计算机是如何处理的,以及 int 的包装类 Integer 的字段和方法

码厩 1万+

大数据运维面试题及答案

1. 架构组成:- 2 个 NameNode(Active 活跃节点、Standby 备用节点),实时同步元数据(通过 JournalNode 集群,默认 3 个节点,存储 edits 日志,Active 写入、Standby 读取以保持元数据一致);- 容错性强:通过 RDD 的 “ lineage(血缘)” 机制,任务失败时可快速重算,无需从头执行。:集群 “大脑”,管理元数据(文件目录、块位置),实时响应客户端请求,数据存于内存,元数据镜像(fsimage)和编辑日志(edits)持久化到磁盘;

weixin_42795092的博客 908

关键词Byte相关知识与实用类的深入理解(流操作,加密处理,图像处理等的基础准备)...

关键词Byte相关知识与实用类的深入理解(流操作,加密处理,图像处理等的基础准备) Byte,long,int,short,char, ( 1 )Byte的解说: byte 关键字代表一种整型,该类型按下表所示存储值: 类型 范围 大小 .NET Framework 类型 byte 0 到 255 无符号 8 位整数 System.Byte 标识符 可如下例所...

编程资料大全 123

STM32 HAL库驱动BMP388:从寄存器配置到高精度气压温度采集

本文详细介绍了如何使用STM32 HAL库驱动BMP388气压温度传感器,实现高精度数据采集。内容涵盖从硬件连接到STM32CubeMX配置、关键寄存器解析、驱动源码编写,到核心补偿算法与海拔换算的完整流程,并提供了针对不同应用场景的优化配置与调试技巧,帮助开发者快速构建稳定可靠的测量方案。

weixin_29299807的博客 171

YOLO11实战优化:长尾分布解决 | 引入Seesaw Loss配合YOLO11分类头,完美应对类别极其不平衡的现实业务场景

摘要: YOLO11在工业缺陷检测等长尾分布场景中面临尾部类别检测失效的问题,根源在于头部类别样本的负样本梯度压制了尾部类别的学习。传统方法如重采样、Focal Loss等效果有限。Seesaw Loss通过动态调整缓解因子和补偿因子,平衡类别间的梯度分布,结合YOLO11的解耦分类头、Anchor-Free设计和C2PSA/C3K2模块,显著提升尾部类别识别能力。文章详细解析了Seesaw Loss的数学原理,并提供了可直接集成到YOLO11的PyTorch实现代码,为长尾分布下的目标检测提供了实用解决方

2601_95807009的博客 256

开发日记-20190417 关键词 JVM互相调用内存GC时不能回收问题

昨天遇到了一个有点让我怀疑自己眼睛的问题,就是JVM对象存活判定时遇到两个对象互相调用的时候,到底会不会回收,我记得我初步学习JVM的时候就是通过《深入理解java虚拟机》这本书开始的。这本书上就讲到过这个问题,可能是我的理解能力有误。 public class ReferenceCountingGC { public Object instance = null; priv...

qq_31433709的博客 504

GraphRAG深度解析:架构设计与实战案例

生成模块结合检索到的图数据和用户输入的查询,生成高质量的文本输出。通过结合图数据库中的知识,模型可以更准确地回答用户的问题,提供更优质的客户服务。通过分析用户的行为和偏好,结合图数据库中的知识,模型可以为用户提供个性化的推荐。:通过图数据库存储和检索结构化的知识,为语言模型提供丰富的背景信息,提升生成内容的质量和准确性。:选择合适的图数据库,如Neo4j、OrientDB等,以支持高效的图数据存储和检索。:利用图数据库的高效检索能力,快速找到与用户查询最相关的图元素,提高系统的响应速度。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 1593

以XC7Z020为例理解FPGA引脚

Bank0中的所有特殊保留引脚。:这是XADC在AMS系统中的参考地和参考电源。:这是Bank0的输入阈值电压。VCCBATT:这是解密器电池供电电压。如果你不使用解密器,你可以安全地将其拉到GND。DXN, DXP:这些是温度感应二极管引脚。这个二极管访问可以用来监测温度,尽管根据UG865,你应该使用XADC内的温度传感器而不是这个二极管。VP, VN:这是构成XADC第17个输入的正和负模拟输入。:这些是专用引脚。

GuoFengZhuo 5200

信号检测算法的MATLAB仿真:能量检测、循环平稳检测和匹配滤波检测

根据具体的应用场景和要求,选择合适的信号检测算法可以提高系统的性能和可靠性。在无线电通信中,信号检测是一项重要的任务,它用于检测和识别接收到的信号。在本文中,我们将介绍三种常用的信号检测算法:能量检测、循环平稳检测和匹配滤波检测,并提供相应的MATLAB源代码进行仿真实现。在上述代码中,我们首先设置了能量检测的阈值,然后生成了一个包含1000个服从正态分布的随机信号样本的信号。在上述代码中,我们首先设置了信号模板,然后生成了一个包含信号模板的信号样本。最后,通过比较相关性的最大值与阈值来判断信号是否存在。

PixelLancer的博客 1363

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

C++ 知识补充

向量(vector)是一个封装了动态大小数组的顺序容器(SequenceContainer)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。C++中map提供的是一种键值对容器,里面的数据都是成对出现的,如下图:每一对中的第一个值称之为关键字(key),每个关键字只能在map中出现一次;第二个称之为该关键字的对应值。

weixin_47059239的博客 2131

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

《深入理解计算机系统》读书笔记02: 计算机系统漫游

作者: andylin02学习章节: 第 1 章 计算机系统漫游关键词: 位序列;编译系统;硬件组成;高速缓存;存储器层次结构;进程;虚拟内存;文件;Amdahl 定律;并发与并行。

1282

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

TSforge终极指南:Windows系统激活与评估扩展的完整解决方案

TSforge是一款专为Windows Vista至Windows 11系统设计的专业级激活与评估扩展工具集,通过深度操作系统的物理存储机制,为技术开发者和系统管理员提供了前所未有的系统激活控制能力。🚀 这款工具的核心价值在于其能够在不修改系统核心文件的前提下,实现硬件无关的永久激活,特别适用于旧版Windows系统的维护和企业环境中的批量授权管理。 ## 项目概览与核心价值 ⚡ TSfor

gitblog_00050的博客 1020

java 所有关键字_Java所有关键字

刚整理出来,写代码统计关键字用String[] keywords = {"abstract", "assert", "boolean", "break", "byte","case", "catch", "char", "class", "const", "continue", "default","do", "double", "else", "enum", "extends", "false"...

weixin_36480255的博客 195

大模型技术解析:从Transformer原理到RAG与智能体应用实践

Transformer架构作为现代大语言模型的核心基础,通过自注意力机制实现了对序列数据的高效并行处理与长距离依赖建模。其强大的表征学习能力,使得模型在参数规模、训练数据和计算量达到临界点后,能够涌现出复杂的逻辑推理、代码生成等高级能力,从而在工程实践中创造巨大价值。当前,检索增强生成(RAG)技术通过结合外部知识库,有效缓解了模型幻觉问题,成为构建可靠问答系统的关键技术。同时,基于大模型的智能体(AI Agent)正从简单的工具演变为具备感知-规划-执行能力的自主系统,重塑着自动化工作流。这些技术共同推动

cigang4063的博客 369

2026年Java面试趋势与核心考点解析

Java作为企业级开发的主流语言,其内存管理机制与并发模型始终是面试核心考点。JVM通过垃圾回收器(GC)自动管理内存,现代GC算法如G1和ZGC能平衡吞吐量与延迟,而Project Loom引入的虚拟线程革新了高并发编程范式。这些技术既解决了传统Java应用的内存泄漏问题,又能支撑云原生场景下的百万级并发。在2026年面试中,牛客网题库特别强调对GraalVM原生镜像和响应式编程的考察,开发者需掌握如何通过JFR工具诊断内存问题,以及使用结构化并发处理分布式事务。

weixin_30321709的博客 336
上一篇: C#.NET 中的类型转换
下一篇: java的各种排序方法..
eclipsesunjava
博客等级 码龄20年 12粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值