C++语法之字符串与数字转化

GESP三级真题解析:从入门到精通的实战指南 本文提供GESP三级C++编程能力等级认证的实战备考指南。通过深入解析《字母求和》、《平衡序列》、《打印数字》及《寻找倍数》等经典真题,详细拆解字符串处理、前缀和算法、模拟思维及时间复杂度优化等核心考点,并分享系统化的知识梳理方法、四步刷题策略及考场时间分配技巧,帮助考生从入门到精通,有效提升计算思维与解题能力。 阅读详情

一、string转int的方式

  1. 采用最原始的string, 然后按照十进制的特点进行算术运算得到int,但是这种方式太麻烦,这里不介绍了。

  2. 采用标准库中atoi函数。

    string s = "12"; 
    int a = atoi(s.c_str()); 

    对于其他类型也都有相应的标准库函数,比如浮点型atof(),long型atol()等等。

  3. 采用sstream头文件中定义的字符串流对象来实现转换。

    istringstream is("12"); //构造输入字符串流,流的内容初始化为“12”的字符串 
    int i; 
    is >> i; //从is流中读入一个int整数存入i中

二、int转string

  1. 采用标准库中的to_string函数。

int i = 12; 
cout << std::to_string(i) << endl;

  不需要包含任何头文件,应该是在utility中,但无需包含,直接使用,还定义任何其他内置类型转为string的重载函数,很方便。

  2. 采用sstream中定义的字符串流对象来实现。

ostringstream os; //构造一个输出字符串流,流内容为空 
int i = 12; 
os << i; //向输出字符串流中输出int整数i的内容 
cout << os.str() << endl; //利用字符串流的str函数获取流中的内容 

  字符串流对象的str函数对于istringstream和ostringstream都适用,都可以获取流中的内容。

【C /C++实战篇】C++ 字符串与数字相互转换, C字符串转数字函数 atoi()、atof();字符串转数字函数stoi()、stol()、stof();数字转字符串to_string()、 本文介绍了C/C++中字符串与数字相互转换的常用方法。在C语言中,可以使用atoi()、atof()等函数将字符串转为数字;在C++中,stoi()、stof()等string类方法更为方便。数字转字符串方面,C++11提供了to_string()方法,也可使用sprintf()或自定义函数实现。文章还展示了如何通过字符串流控制浮点数转换精度,并比较了不同方法的适用场景和特点。这些转换技巧在日常编程中非常实用,开发者可根据具体需求选择合适的方法。 阅读详情

相关推荐

C++将数字字符串转化为单个数字

实现了将数字字符串转化为单个数字的源码,已测试可用

c++ 字符串与数字相互转换

日常编码过程中,字符串与数字进行相互转换是常见的需求,下面我们总结一下在c++中,字符串与数字的转换都是如何来进行操作的。首先看看,在c语言的风格中,我们怎么做到把字符串转为数字。 注意上述代码是在namespace为std的环境中运行。 atoi, atof函数,均在stdlib.h中进行了声明,在头文件中,其声明的函数原型为 不难看出,上面这些方法的输入均为const char *,即字符串,得到的输出为转化以后的各种数值类型。 2.字符串转数字c++风格 上面代码也是在namespace为std的环

bitcarmanlee的博客 3万+

c++将字符串转数字的实例方法

C++字符串转化为数字的库函数 1、atoi 功 能:把一字符串转换为整数 用 法:int atoi(const char *nptr); 详细解释:atoi是英文array to integer 的缩写。atoi()会扫描参数nptr字符串,如果第一个字符不是数字也不是正负号返回零,否则开始做类型转换,之后检测到非数字或结束符 /0 时停止转换,返回整型数。 参 数: *nptr: 待转化的字符串。 返回值: int: 转换后的整形数。 2、atol 功 能:把一字符串转换为长整形 用 法:long atol(const char *nptr); 详细解释:atol()会扫描参数nptr字符

C++中字符与数字的转化方法

int a;is >> a;// 从 is 流中读入一个 int 整数存入 a 中插播一下字符串流stringstream–<sstream>详解// 构造一个空的输出字符串流os << a;// 向输出字符串流中输出 a 的内容// 利用 str 函数获取流中的内容。

m0_72615272的博客 6038

手把手教你用smarteye搭建免费GB28181监控平台(含海康设备接入避坑指南)

本文提供了一份基于SmartEye搭建免费GB28181视频监控平台的实战指南。详细介绍了从服务器部署、GB28181协议核心配置,到海康威视等主流设备接入的完整流程,并重点分享了设备注册失败、无法预览等常见问题的深度排错方法,旨在帮助中小企业及开发者低成本实现多品牌监控设备的统一管理。

pz89012345的博客 326

MQTT阿里云OTA 调试记录

2.验证,这个验证是什么意思呢,就是阿里云会把你包的信息,比如包大小,streamid(相当于包的识别码),版本号发送给你的设备,然后如果你没发送升级成功的包给阿里云,这里会是一直验证中的状态,那你的设备每次重新连接阿里云,发送connect包给阿里云的时候,阿里云就会发送一次这个验证(upgrade)包。提取到了之后就可以发送请求包了,这个请求包比较坑,也可能是我没付费,他的包一次最多只有1024个字节的数据。之前说了,验证状态下,设备发送connect包给阿里云,阿里云就会发一个upgrade包给你。

qq_42585211的博客 1231

C++中将字符串转换为数字

法一: int t = s[len - 1]-'0';//减去一个 '0' 是 将最后一位字母转换成数字 例如:这个判断基偶性就是为了防止越界所以将数组转换为数组传入,再将最后一位字母转换位数字判断其基偶性 #include<iostream> using namespace std; int main() { int n; cin >> n; string s; while (n--) { cin >> s; int len = s.length(

qq_46906413的博客 2万+

开源网格划分软件-Gmsh二次开发教程 (4)网格生成与控制​

​本章将深入讲解Gmsh的网格生成技术,包括全局/局部网格控制、边界层生成、自适应细化等,并提供完整的代码示例。

ZQGG的博客 1474

C/C++编程笔记:如何将C ++字符串转换为数字?三种方法教给你

通常,或更具体地说,在竞争性编程中,有许多情况需要将数字转换为字符串或将字符串转换为数字。但是缺乏某些必不可少的工具的知识使我们不得不这样做。本文介绍了一些实现此任务的方法。 将字符串转换为数字 方法1:使用字符串流类或的sscanf() 方法2:字符串使用转换Stoi旅馆()或的atoi() 这两种方法进行了详细的讨论此文章。 方法3:使用boost词汇表转换 Boost库提供了一个内置函数“ lexical_cast(“ string”)”,该函数直接将字符串转换为数字。如果输入无效,则

致力于C语言C++知识分享! 1万+

三极管稳压电路仿真分析

Z1的负极连接到三极管的基极,三极管发射极E是输出,形成了一个射极跟随器,也就是说,E极的电压随着B电压变化而变化,但BE之间有一个压降,一般硅管0.7V左右,假设B极是6.7V,那E极就是6.7-0.7=6V,所以就有一个公式VOUT=Vz-Vbe,可以根据VOUT来选择合适的稳压管。从稳压管的SPEC中我们可以看到,Vz@Izt这个参数,指在Izt=20mA时,稳压管的稳压值Vz=5.1V,也就是说流过稳压管的电流在20mA以上,稳压效果最佳。三极管导通之后,E点电压会升高,当升高到Vbe。

U_YAO的博客 2325

168、运动控制中的标定:编码器零点标定

文章摘要 运动控制系统中的编码器零点标定是确保精确控制的关键基础步骤。文章通过实际案例说明,即使0.3度的零点偏移也会导致电机异常抖动。详细介绍了三种标定方法:反电动势法(需示波器)、电流注入法(适合量产)和霍尔传感器法(粗标定),并指出常见陷阱如忽略极对数、Z脉冲重复性问题和温度漂移。提供了基于STM32的嵌入式实现代码片段,强调标定后的静态、动态和负载验证的重要性。作者建议量产产品设置自动标定工位,研发样机采用更精确的方法,并强调标定数据应与电机序列号绑定。

m0_50546716的博客 137

C++常见小知识点

1.数字转化为字符串: 2.字符串转化为数字:

Tokyo_2024的博客 335

基础入门篇 | YOLOv8 项目【训练】【验证】【推理】最简单教程 | YOLOv8必看 | 最新更新,直接打印 FPS,mAP50,75,95

三个文件搞定YOLOv8【训练】【验证】【推理】🚀🚀🚀

Coding... 2万+

2496. 数组中字符串的最大值-LeetCode(C++)

函数:这是一个标准库函数,用于检查传入的字符是否为数字(0-9)。是一个无符号整数类型,专门用于表示对象的大小,如数组、容器等的大小。将保存遍历过程中遇到的最大值,无论是字符串长度还是字符串表示的整数值。中的每个字符是否都是数字。,每个字符串都只由字母和数字组成,请你返回。的长度还是字符串转换为整数后的结果与当前的。的每个字符,如果发现任何一个字符不是数字,这道题的代码写的很简洁,值得学习一下。变量:这是一个布尔变量,初始值设为。是一个逻辑表达式,用于检查字符串。一个由字母和数字组成的字符串的。

woshihlf的博客 1012

6-2 GPU GART 绑定机制与 TLB 失效

本文详细解析了AMD GPU的GART(Graphics Address Remapping Table)绑定机制实现。主要内容包括: 绑定流程:从ttm_tt_bind()到硬件PTE更新的完整调用链,重点分析amdgpu_gart_bind()函数实现。 关键函数: amdgpu_gart_bind():执行安全检查、记录映射关系、更新页表等操作 amdgpu_gart_map():将CPU页映射为多个GPU页并填充PTE amdgpu_gmc_set_pte_pde():处理硬件特定的PTE格式 内存

图形/计算GPU的驱动与虚拟化技术分享园地 2655

PyTorch实战(20)——生成对抗网络(Generative Adversarial Network,GAN)

自生成对抗网络 (Generative Adversarial Network, GAN) 提出以来,一直是一个活跃的研究和开发领域。本节探索了 GAN 的基本概念,重点解析了其两大核心组件——生成器与判别器的架构设计,深入阐述了 GAN 模型的整体工作机制,并使用 PyTorch 从零开始实现了深度卷积生成对抗网络 (Deep Convolutional GAN, DCGAN)。

盼小辉丶的博客 3537

GESP三级C++真题精讲:从打印数字到回文拼接的实战技巧

本文精讲GESP三级C++等级考试真题,通过“打印数字”、“数字替换”、“回文拼接”和“平衡序列”四道典型例题,深入剖析解题思路与实战技巧。文章强调从实际问题到代码的思维转化,并分享了预处理、线性遍历、暴力枚举和前缀和等核心解题方法,帮助考生高效备考,掌握可复用的解题心法。

t8u9v0w1x的博客 212

深度学习工具包 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")

基于范围的for循环(C++11):for(int j : a)---eoj密码产生器

for循环,eoj

qq_62678349的博客 323

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

C++编程入门第三阶段:从语法到算法思维的实战跨越

程序设计思维是连接基础语法与解决实际问题的桥梁,其核心在于将计算规则抽象为逻辑流程,并通过代码严谨实现。这一过程涉及复杂流程控制、数据结构应用与模块化编程,是培养工程实践能力的关键。在C++学习的中级阶段,学习者需掌握数组、字符串等基础数据结构,理解嵌套循环与条件组合,并初步运用函数进行代码封装。这些能力对于实现基础算法、进行问题建模至关重要,尤其为NOI等算法竞赛的初期训练打下坚实基础。通过系统练习问题分析与抽象建模,开发者能有效跨越从‘知道语法’到‘能用语法解决问题’的鸿沟,提升代码调试与优化效率。

weixin_34184158的博客 400

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

c 语言中字符与数字的转化,关于字符串与数字的转化(C语言)

字符串转化为数字面试例题3:使用库函数将字符串转换为数字。考点:C库函数中字符串转换为数字的使用。出现频率:★★★★解析与上节数字转换为字符串类似,C/C++语言提供了几个标准库函数,可以将字符串转换为任意类型(整型、长整型、浮点型等)。以下列举了各函数的方法及其说明。atof():将字符串转换为双精度浮点型值。atoi():将字符串转换为整型值。atol():将字符串转换为长整型值。strtod...

weixin_30140399的博客 1650

10min快速回顾C++语法(五)字符串专题

C++的语法基础(五)⭐写在前面的话:本系列文章旨在短时间内回顾C/C++语法中的重点与易错点,巩固算法竞赛与写题过程中常用的语法知识,精准地解决学过但有遗忘的情况,为算法刷题打下坚实的基础。字符与整数——ASCII码 8.2 字符数组 8.2.1 字符数组的输入输出: 8.2.2 字符数组的常用操作 8.2.3 遍历字符数组中的字符 8.3 标准库类型string 8.3.1 定义和初始化 8.3.2 string上的操作 8.3.3 处理string对象中的字符......

timerring的博客 1万+

【C++】字符串和数字互相转换大全

一、使用字符串流对象进行数字转换 C++ 有两个类,ostringstream 和 istringstream,可以用来对内存中的值执行字符串/数字转换。必须在程序中包含 sstream 头文件才能使用这些类。 以下是这些类的用法: //This program illustrates the use of sstream objects #include <sstream> #include <iostream> #include <string> using name

郝同学的博客 6332

字符串与数字格式转换__字符串转换成数字格式转换的函数(1)

背景小知识: 例如 int、long 和 double 等,有时也需要转换为字符串形式,这样结果字符串才能立即输出到文件或其他输入输出设备,或者存入内存中的某个字符串对象,供以后使用。 当用户在键盘上输入一个数字时,该数字以字符串的形式输入,就好像用户输入的一系列字符(数字)。在 C++ 中,这样的数字通常通过流提取运算符 >> 来读取。在存储到数字类型的变量之前,该运算符会根据需要自...

weixin_44001521的博客 2584

如何将字符串转化为数字?

1.stringstream方法 记得头文件添加sstream #include <iostream> #include <string.h> #include<sstream> using namespace std; int main() { string a="1234"; stringstream geek(a); int b; geek>>b; cout<<b+5<<endl;

m0_51213124的博客 1万+

字符串和数字的相互转化

字符串和数字的相互转化 #include #include using namespace std; int main() { int num=0; char *p=new char[11]; gets(p); cout<<*p; while(*p!='\0') { num=num*10+*p-'0'; p++;

cm018的专栏 499

c++入门基础(基础语法)

一个变量相当于输出一个点,一个循环相当于输出一条线,双重循环相当于输出一个平面,三重循环相当于输出一个立体图形。总结:与if语句比,对于多条件判断时,switch的结构清晰,执行效率高,缺点是switch不可以判断区间。表达式3){ // 表达式2为真继续循环,否则结束循环。4 变量有特定的类型,类型决定了存储单元的大小和变量值的范围,运算符可应用于变量上。while( 循环条件 ){ // 条件为真继续循环,否则结束循环。

weixin_46836127的博客 3万+
上一篇: C++语法之字符串替换
下一篇: C++语法基础之STL集合类
鹅鹅鹅www
博客等级 码龄9年 1粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值